【发布时间】:2013-08-18 03:05:05
【问题描述】:
我需要根据在它的父简码中设置的活动号码,动态地将一个活动类添加到 wordpress 中的简码。
父母看起来像这样:
$active = 3;
$output .= "\n\t\t".wpb_js_remove_wpautop($content);
$content 变量在技术上可以包含短代码标签之间的任何内容,但具体来说,应该包含更多的子短代码(它是一个标签短代码,因此父标签是标签,子标签是标签)。
我需要做的是解析$content并将[vc_tab的第N个($active变量)实例替换为[vc_tab active="true"
我意识到有更好的方法来设计短代码来弥补这一点,但我能做的很有限,因为我正在修改 Visual Composer 以使用 Bootstrap 选项卡而不是 jQuery,而 Bootstrap 选项卡需要两个 @ 上的活动类987654326@ 和 <div class="tab-pane"> 元素,但我不希望用户必须向父简码添加一个活动号码,并为孩子添加一个活动的真/假,因为这会让人感到困惑。
到目前为止,我只能找到替换第一个或所有出现的地方,而不是第 N 个。
我暂时使用 jQuery 来激活适当的 <div>,但这会导致不受欢迎的 FOUC,在加载时没有可见的窗格,然后在 jQuery 运行时弹出一个窗格。
$('.tabs-wrap').each(function(){
var activeTab = $(this).find('.tabbed li.active a').attr('href');
$(this).find(activeTab).addClass('active');
});
【问题讨论】:
标签: php regex wordpress preg-replace preg-match