如果存在另一个div(由Wordpress短代码创建),则将类添加到div

时间:2013-12-05 19:43:39

标签: javascript css wordpress shortcode

我已经尝试(并搜索过)我想要做的许多版本,但我无法解决这个问题。

我正在构建一个Wordpress主题,作者将在短代码中输入内容(因此他们可以使用Visual Editor工具栏轻松更改颜色),但不是每个帖子都可以。

我设置了短代码(名为.tag)。

但是,我希望标签在帖子标题(.post-title)的前面显示并向右推(75px),如果标签包含在帖子中。如果不是,我希望帖子标题保持原样。

我想我需要这样的事情:Jquery check if element exists then add class to different element

但我无法满足我的需求!

我的问题是它无法检查是否包含标签(因为它位于帖子标题之后的帖子正文中)然后移动它?

任何建议都很棒。

2 个答案:

答案 0 :(得分:0)

我觉得这是你想要服务器端而不是javascript的东西。试试has_shortcode()

global $post;
if (has_shortcode($post->post_content, 'tag')) {
  echo '<h1 class="post-title has-shortcode">Title</h1>';
} else {
  echo '<h1 class="post-title">Title</h1>';
}

您可能希望将其添加为the_title上的过滤器?

(codex文档here

答案 1 :(得分:0)

没有html我不能确定但是你可以简单地使用css伪类,如:parent来获取没有涉及jquery事件的行为。

检查出来

css_pseudo_classes

.tag:parent {
    whatever:whatever;
}