从后端页面创建短代码

时间:2017-09-20 14:56:01

标签: php wordpress shortcode wp-admin

我正在尝试从当前位于后端的页面创建一个短代码。该页面有几个acf字段作为创建请求的表单的一部分。我现在想在前端有相同的页面。在阅读了关于shortocdes,它的api和doc以及在线的几个不同的tuts后,我尝试遵循从函数创建短代码的语法。

add_shortcode('create_requests', array($this, 'load_custom_wp_admin_style'));

^上面的尝试不起作用,当我在新页面中包含短代码时,我没有得到任何输出。

您可以注意到我尝试使用的函数'load_custom_wp_admin_style'返回一个空值并使用钩子。

This是包含该函数的文件。

2 个答案:

答案 0 :(得分:0)

尝试包含如下代码的文件。我根据我检查了你的文件,你需要使用插件网址,好像你正在开发插件

wp_register_style('your_namespace', plugins_url('style.css',__FILE__ ));
wp_enqueue_style('your_namespace');
wp_register_script( 'your_namespace', plugins_url('your_script.js',__FILE__ ));
wp_enqueue_script('your_namespace');

答案 1 :(得分:0)

假设您要在前端显示的页面是一个普通的WordPress页面 - 在页面选项卡中创建,发布类型页面。

很简单,您只需使用以下PHP代码将其包含在模板中:

<?php
$page = get_post(192994);
echo $page->post_content;
?>

如果它需要是一个短代码,你可以将它添加到你的functions.php:

function output_page_function($atts) {
    $page_id = $atts['page_id'];

    if (!$page_id) return false;

    $page = get_post($page_id);

    return $page->post_content;
}
add_shortcode('output_page', 'output_page_function');

并在需要时包含一个短代码(带有'page_id'属性)

[output_page page_id=192994]

如果它不是WordPress页面,而是实际的wp-admin屏幕,那么这将非常困难/不可能。