Wordpress:漂亮永久链接打破侧边栏PHP

时间:2014-10-24 22:23:27

标签: wordpress permalinks break sidebar

我正在为客户更新旧网站。这是2009年的一个非常古老的wordpress。许多代码混合了静态和动态。

根据页面模板,侧边栏会根据不同的页面进行更改。

这是当前的条形码

<div id="sidebar">
<?php 
    $pageID = $_GET["page_id"];
    $sidebar = get_post_meta($pageID, 'sidebar', true);

    if(is_single()){
        $sidebar = 'Blog';
    }

    if(!dynamic_sidebar($sidebar)){
    echo "Could not find sidebar";
  }

?>
</div>

当我将固定链接更改为prettypermalinks时,会打破侧边栏并出现此错误“无法找到侧边栏”

当我将永久链接更改回默认值时,它会再次起作用。

有没有人知道这个问题?感谢

1 个答案:

答案 0 :(得分:0)

这可能是由于$ _GET请求专门查找页面ID而不是slug,或更新永久链接后查询字符串中的内容。

试试这个。

<div id="sidebar">
<?php 
    $pageID = get_the_ID();
    $sidebar = get_post_meta($pageID, 'sidebar', true);

    if(is_single()){
        $sidebar = 'Blog';
    }

    if(!dynamic_sidebar($sidebar)){
    echo "Could not find sidebar";
  }

?>
</div>

同样为了将来参考,&#34;找不到侧边栏&#34;消息实际上不是&#34;错误&#34; - 它只是你从最后一次获得的输出&#34; if&#34;。