WordPress 修改 the_content 标记

发布于 2024-11-16 22:59:34 字数 495 浏览 0 评论 0原文

使用 jQuery 或 PHP,我想修改 WordPress 中 the_content 函数的 dom 结构。在一些帖子中,我使用 h3 元素,并且我想添加一个包含直到下一个 h3 的内容的包装器。

所以我想将其转换

<h3>Title</h3>
<p>This is just regular text</p>
<h3>Next title</h3>

为:

<div class='wrapper'>
  <h3>Title</h3>
  <p>This is just regular text</p>
</div>
<div class='wrapper'>
  <h3>Next title</h3>
</div>

谢谢!

With jQuery or PHP, I would like to modify the dom structure of the the_content function in WordPress. In some posts I use the h3 element, and I would like to add a wrapper that contains the content until the next h3.

So I would like to convert this:

<h3>Title</h3>
<p>This is just regular text</p>
<h3>Next title</h3>

Into this:

<div class='wrapper'>
  <h3>Title</h3>
  <p>This is just regular text</p>
</div>
<div class='wrapper'>
  <h3>Next title</h3>
</div>

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

古镇旧梦 2024-11-23 22:59:34

假设内容仅由

组成,并且它们的格式良好,如下所示:

<div id="content">
   <h3>title</h3>
    <p>..........</p>
    <p>..........</p>
   <h3>another title</h3>
    <p>.........</p>
   <h3>yet another title</h3>
    <p>..........</p>
 </div>

那么您可以在 jQuery 中尝试此操作。

  //get the main post content
  $content=$("#content");
  $h3s=$content.find('h3');
  $h3s.each(function(index){
       if(index==0)$(this).before('<div class="wrapper">');           
       else $(this).before('</div><div class="wrapper">');
  });
  //remeber to close the last one
  $content.append('</div>');

assuming that the content only consists of <h3>s and <p>s,and they are welled formated like:

<div id="content">
   <h3>title</h3>
    <p>..........</p>
    <p>..........</p>
   <h3>another title</h3>
    <p>.........</p>
   <h3>yet another title</h3>
    <p>..........</p>
 </div>

then you may try this in jQuery.

  //get the main post content
  $content=$("#content");
  $h3s=$content.find('h3');
  $h3s.each(function(index){
       if(index==0)$(this).before('<div class="wrapper">');           
       else $(this).before('</div><div class="wrapper">');
  });
  //remeber to close the last one
  $content.append('</div>');
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文