关闭。这个问题是题外话。它当前不接受答案。
想改善这个问题吗?更新问题, 使其成为Stack Overflow的主题。
7年前关闭。
有没有办法在管理员中隐藏模板文件?
例如, 我有一个仅在安装了特定插件的情况下才可用的模板, 并且我已经知道如何检查插件是否处于活动状态。但是, 如何隐藏模板?
例如, 我想隐藏”
Blogger重定向”
-模板波纹管:
文章图片
我发现了几个链接, 但是所有解决方案似乎都已弃用。
编辑:如果有人对我如何检查插件是否活跃感兴趣, 请执行以下功能:
function isPluginActive($plugin){
if ( in_array( $plugin, apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) )
{
return true;
}
return false;
}
#1 更新-由安德鲁(Andrew)在以下评论中指出的警告:
谨慎使用此代码, 如果有任何页面使用从选择中删除的模板, 则更新页面将导致其恢复为默认模板我不确定是否有PHP方式可以执行此操作-你必须查看WP_Theme类, 但是从我的初看起来来看, 这可能是不可能的, 因为为了获取所有模板, 该类利用了内部函数名为scandir(), 它将扫描当前主题目录并从那里获取所有.php文件。然后, 它查找相应的Template Name:标识符, 如果存在, 则将其添加到模板列表中。
因此, 我建议你添加一些JS, 以将其从页面模板选择中删除。这是一个代码片段:
function my_remove_page_template() {
global $pagenow;
if ( in_array( $pagenow, array( 'post-new.php', 'post.php') ) &
&
get_post_type() == 'page' ) { ?>
<
script type="text/javascript">
(function($){
$(document).ready(function(){
$('#page_template option[value="http://www.srcmini.com/sidebar-page.php"]').remove();
})
})(jQuery)
<
/script>
<
?php
}
}
add_action('admin_footer', 'my_remove_page_template', 10);
这将从下拉列表中删除模板sidebar-page.php。条件是为了使脚本仅添加到页面的添加和编辑屏幕上。
适应你的情况并享受:)
#2 【如何在WordPress中隐藏模板( [关闭])】WordPress没有提供任何挂钩, 因此你无法将其从PHP中删除。
我想到的一种替代方法是, 你可以使用JavaScript动态删除它。在添加帖子页面中添加JavaScript片段, 这将从select元素中删除该选项。
我知道这不是一个干净的解决方案, 但是我认为这是到目前为止唯一可能的方法。
编辑:
另一个选项是在激活插件时将模板文件复制到主题目录, 并在禁用插件时删除模板文件。
这假定该模板仅由该插件使用。
推荐阅读
- 如何在WordPress中将单个帖子链接到thickbox()
- WinRAR基础运用攻略
- 提高WinRAR运用效率的20个技巧
- 搜狗输入法不能切换怎样办_搜狗输入法
- WinRAR令人意外的2大技巧
- WinRAR提高安全级别的办法
- 必应Bing输入法V模式中译英运用图文详细教程
- 这13个WinRAR运用技巧您一定不知道!
- 图 WinRAR与大局部处理文件有关的7个技巧