48

我所拥有的只是以下一小段代码:

<select size="1" name="EventHour<?php echo $i; ?>"> 
    <option>1</option> 
    <option>2</option> 
    <option>3</option> 
    <option>4</option> 
    <option>5</option> 
    <option>6</option> 
    <option>7</option> 
    <option>8</option> 
    <option>9</option> 
    <option>10</option> 
    <option>11</option> 
    <option>12</option> 
  </select> 
  : <!-- note this character -->
  <select size="1" name="EventMinute<?php echo $i; ?>"> 
    <option>00</option> 
    <option>05</option> 
    <option>10</option> 
    <option>15</option> 
    <option>20</option> 
    <option>25</option> 
    <option>30</option> 
    <option>35</option> 
    <option>40</option> 
    <option>45</option> 
    <option>50</option> 
    <option>55</option> 
  </select> 

应该输出正常。但是,WordPress 在我的两个选择元素以及“:”字符周围添加了一个 p 标记。这使得它们最终都在不同的行上。

我已经在此页面上安装并激活了 WordPress 插件“禁用可视化编辑器所见即所得”,但没有成功。我还能做些什么来阻止这种情况的发生?提前致谢!

4

10 回答 10

73

用这个:

remove_filter( 'the_content', 'wpautop' );
remove_filter( 'the_excerpt', 'wpautop' );

在你的functions.php

这是完整的答案:http ://codex.wordpress.org/Function_Reference/wpautop#Disabling_the_filter

于 2012-09-04T18:45:14.017 回答
10

Wordpress 在编辑器和输出中修改和清理您输入的 HTML。

使用此插件将未经修改的标记添加到您的帖子中:

https://wordpress.org/extend/plugins/raw-html/

于 2012-06-28T16:22:12.460 回答
3

在你的functions.php中试试这个

<?php remove_filter ('the_content', 'wpautop'); ?>
于 2012-06-28T16:11:27.747 回答
2

你可以缩小你的代码。如果所有内容都在一行上,Wordpress 不会破坏代码。

当我想在某些帖子中放置<style><script>标记时,我会这样做。

于 2017-10-20T18:02:32.240 回答
0

就我而言,我正在为页面手动执行此操作:

显示额外p标签的结果:

 <p><?php if($description){ echo $description; } ?></p> 
 <p><?php if($description){ echo wpautop($description); } ?></p> 

删除额外p标签的结果:

 <?php if($description){ echo wpautop($description); } ?>  

请注意,我删除了.p周围的标签echo,然后添加wpautopecho.

最终结果:

<p>description content</p> 
于 2018-06-26T08:08:14.880 回答
0

如果帖子是自定义帖子类型,您可以使用add_meta_box添加元框,然后您可以使用可以自定义的wp_editor初始化您自己的编辑器。例如,您可以将设置传递给 tinymce,例如“force_p_newslines”和“forced_root_block”

于 2019-05-28T12:53:52.933 回答
0

至少在 contact-form-7 中,我使用 html-minifier 来防止那些讨厌的 p-tags 取得了一些成功。来到这里是因为我搜索了其他人是否也像我一样感到沮丧。

如果您在代码 minifire 之后仍然有问题,那么只需将您的标签转换为自动添加标签的div位置。p

于 2019-10-16T11:06:12.927 回答
0

如果其他人遇到这个问题并且不能或不想安装另一个插件,或者再次不能或不想编辑他们的functions.php文件,你也可以这样做!

我的原始代码:

your original code

that worked wonderfully..

and then wordpress happened

我的代码与解决方法:

your original code
//
that worked wonderfully..
//
and then wordpress happened

只要我确保我的代码中没有任何空行,这至少对我来说似乎是一种解决方法。我想知道是否:不足以欺骗它不添加 ap 标签,但我正在用 javascript 编码,它对我有用。

于 2019-11-20T05:34:30.900 回答
0

另一种解决方法:将您的选择放在<div>标签内,它们之间没有任何空格字符。所以而不是:

<select ...>
</select>

<select ...>
</select>
 

你这样写:

<div><select ...>
</select></div>

<div><select ...>
</select></div>

我在<a>元素方面遇到了同样的问题,这为我解决了。

于 2020-09-19T14:35:58.007 回答
0
<!-- wp:html -->

You can insert your code between these tags.

<!-- /wp:html -->

在 5.6.2 WordPress 上测试

于 2021-03-03T15:58:05.503 回答