我正在尝试为我的插件添加一个可湿性粉剂重写,允许用户在页面上包含一个短代码,然后显示日历。然后,此日历需要url参数才能导航日期。所有这些都很好,没有问题。。。现在,如果用户在具有父页面或多个页面的页面上包含短代码,它就可以正常工作。因此,另一个词是,如果带有快捷码的页面被称为“班级日历”,并且用户将其作为名为“瑜伽”的父页面的子页面,那么url可能看起来像mysite。com/yoga/class-calendar/如果你浏览日程安排,那么它看起来就像mysite。com/yoga/class calendar/2014年7月4日。我有它的工作很好,如果它像我的网站。com/class calendar/2014年7月4日,但我需要能够使其适用于未知的父页面。我可以让它像下面的代码示例一样工作$newrules=array();
$newrules[\'([^/]*)/([^/]*)/\' . $this->schedule_page_slug . \'/([^/]*)/([^/]*)/([^/]*)/?$\'] = \'index.php?pagename=$matches[1]/$matches[2]/\' . $this->schedule_page_slug . \'&month=$matches[3]&days=$matches[4]&years=$matches[5]\';
$newrules[\'([^/]*)/\' . $this->schedule_page_slug . \'/([^/]*)/([^/]*)/([^/]*)/?$\'] = \'index.php?pagename=$matches[1]/\' . $this->schedule_page_slug . \'&month=$matches[2]&days=$matches[3]&years=$matches[4]\';
$newrules[$this->schedule_page_slug . \'/([^/]*)/([^/]*)/([^/]*)/?$\'] = \'index.php?pagename=\' . $this->schedule_page_slug . \'&month=$matches[1]&days=$matches[2]&years=$matches[3]\';
return $newrules + $rules;
然而,即使这样做有效,我知道这是不对的,它只处理短代码为2页深的页面(并不是说它真的应该更深入,但我知道我是怎么做的,这是不对的)
如果能帮我找到正确的方向,我将不胜感激。我一直想和一个外卡家长捣乱,但都没能奏效。谢谢