基于一个特定的值(AppID),我想在wordpress博客中隐藏一个小部件ID。
我的小部件Id:定制_html-2(我从启用可访问性模式获得了这个值)(从这个url我得到了widgetID:/wp-admin/widgets.php?widgets-access=on&_wpnonce=0b123456fb2&editwidget=custom_html-2&sidebar=right-sidebar&key=0 )
在这里,当的值为in.abcd.app时,我想隐藏appID自定义_html-2。
我只是响应了appID,我得到了in.abcd.app的值,但是小部件没有隐藏。
我打开Sidebar (sidebar.php)在单词press和做修改如下。没有锻炼-我对wordpress和PHP很陌生
<!-- Sidebar -->
<div class="col-lg-4 col-md-4 col-sm-4">
<aside class="sidebar">
<?php if ( is_active_sidebar( 'right-sidebar' ) ) : ?>
<div class="sidebar-widget">
<?php dynamic_sidebar( 'right-sidebar' ); ?>
<?php
<?php $widgets = get_option('widget'.sidebar-widget); ?>
$appID = $_SERVER['HTTP_X_REQUESTED_WITH']
if ($appID = 'in.abcd.app')
{
<?php unset($widgets['custom_html-2']); ?>
?>
</div>
<?php endif; ?>
</aside>
</div>
<!-- /end sidebar -->发布于 2017-12-05 19:02:15
您需要在functions.php中添加如下内容
add_filter( 'sidebars_widgets', 'unset_sidebar_widget' );
function unset_sidebar_widget( $sidebars_widgets ) {
$appID = $_SERVER['HTTP_X_REQUESTED_WITH'];
if ($appID = 'in.abcd.app')
{
unset($sidebars_widgets['custom_html-2']);
}
return $sidebars_widgets;
}发布于 2017-12-05 18:49:15
我认为dynamic_sidebar( 'right-sidebar' );呈现侧边栏和小部件,所以如果在小部件呈现后取消设置小部件,它将不会更改任何内容。
尝试将dynamic_sidebar( 'right-sidebar' );放在未设置部分之后。
https://stackoverflow.com/questions/47660454
复制相似问题