仅用于一页的 wordpress 简码
wordpress shortcode just for one page
我写了一个用于显示数据的短代码,它只在一页中使用(即:PAGEX 使用 full-width-page-template.php) .简码功能非常强大
function rj_mysh_shortcode() {
// Lots of lines of business logic
}
add_shortcode('rj_mysh', 'rj_mysh_shortcode');
每次调用一个网页我认为functions.php被PHP调用和解析。我正在寻找解决方案,以避免花时间解析无用的东西。
我想我可以创建一个模板 TEMPLATE_PAGEX 并将函数移到那里。
TEMPLATE_PAGEX.php:
<?php
function rj_mysh_shortcode_template() {
// Lots of lines of business logic
}
include(locate_template('full-width-page-template.php'));
?>
最后的简码是:
function rj_mysh_shortcode() {
return rj_mysh_shortcode_template()
}
add_shortcode('rj_mysh', 'rj_mysh_shortcode');
这是正确的解决方案吗?
Rr
您始终可以检查您所在的页面:developer.wordpress.org/reference/functions/is_page ... is_page($pageID)
... 如果在该页面上,则只有 运行 代码。
function rj_mysh_shortcode() {
if(is_page($pageID)) {
// Lots of lines of business logic
}
}
add_shortcode('rj_mysh', 'rj_mysh_shortcode');
或者直接从 functions.php
中删除对 shortcode
和 运行 logic/code 等的需要,但进行相同的页面检查,因此它只会得到运行 在该特定页面上。
我写了一个用于显示数据的短代码,它只在一页中使用(即:PAGEX 使用 full-width-page-template.php) .简码功能非常强大
function rj_mysh_shortcode() {
// Lots of lines of business logic
}
add_shortcode('rj_mysh', 'rj_mysh_shortcode');
每次调用一个网页我认为functions.php被PHP调用和解析。我正在寻找解决方案,以避免花时间解析无用的东西。
我想我可以创建一个模板 TEMPLATE_PAGEX 并将函数移到那里。
TEMPLATE_PAGEX.php:
<?php
function rj_mysh_shortcode_template() {
// Lots of lines of business logic
}
include(locate_template('full-width-page-template.php'));
?>
最后的简码是:
function rj_mysh_shortcode() {
return rj_mysh_shortcode_template()
}
add_shortcode('rj_mysh', 'rj_mysh_shortcode');
这是正确的解决方案吗?
Rr
您始终可以检查您所在的页面:developer.wordpress.org/reference/functions/is_page ... is_page($pageID)
... 如果在该页面上,则只有 运行 代码。
function rj_mysh_shortcode() {
if(is_page($pageID)) {
// Lots of lines of business logic
}
}
add_shortcode('rj_mysh', 'rj_mysh_shortcode');
或者直接从 functions.php
中删除对 shortcode
和 运行 logic/code 等的需要,但进行相同的页面检查,因此它只会得到运行 在该特定页面上。