gpt4 book ai didi

php - 当代码中未指明时,为什么我的代码输出包含额外的

标记?

转载 作者:行者123 更新时间:2023-12-04 06:28:00 26 4
gpt4 key购买 nike

我是 PHP 编码的新手。我对这个很困惑。我正在为我的 wordpress 网站创建一些短代码。基本上,我已经创建了许多工作正常的短代码,但是当我开始编码这个时,输出包含不必要的 < br> 和 < p> 标签。

这是我的代码的一部分:

function searchbox ($atts) {
global $wpdb;
$link = get_bloginfo('url').'/search/';
$out .= '<form name="search" action="'.$link.'" method="get">';
$out .= '<label>Developer:</label>';
$out .= '<select name="dev">';
$developers = $wpdb->get_col($wpdb->prepare("
SELECT DISTINCT meta_value
FROM $wpdb->postmeta
WHERE meta_key = %s
ORDER BY meta_value ASC", 'developer') );
if ($developers) {
foreach ($developers as $developer) {
$out .= "<option value=\"" . $developer . "\">" . $developer . "</option>";
}
}
$out .= '</select>';
$out .= '<label>Location</label><select name="loc">';
$locs = $wpdb->get_col($wpdb->prepare("
SELECT DISTINCT meta_value
FROM $wpdb->postmeta
WHERE meta_key = %s
ORDER BY meta_value ASC", 'loc') );
if ($locs) {
foreach ($locs as $loc) {
$out .= "<option value=\"" . $loc . "\">" . $loc . "</option>";
}
}
$out .= '</select>';
$out .= 'Price Range: <input type="text" size="4" name="pmin"> '
+'to <input type="text" size="4" name="pmax">';
$out .= '<input type="submit" value="search" />';
$out .= '</form>';
return $out;
}
add_shortcode ('searchbox', 'searchbox');

然后在WP编辑器中添加短代码[searchbox]。输出的html代码是:
<form name="search" action="http://www.mycondophilippines.com/search/" method="get">
<label>Developer:</label><br />
<select name="dev">
<option value="Avida Land">Avida Land</option>
<option value="DMCI Homes">DMCI Homes</option>
<option value="SMDC">SMDC</option>
</select>
<p><label>Location</label><br />
<select name="loc">
<option value="Makati">Makati</option>
<option value="Mandaluyong">Mandaluyong</option>
<option value="Manila">Manila</option>
</select>
<p>Price Range:<br />
<input type="text" size="4" name="pmin"> to<br />
<input type="text" size="4" name="pmax">
<input type="submit" value="search" />
</form>

注意添加的 br 和 p 标签。我观察到,当在html代码上添加文本时,它会自动添加 <br><p>标签。我对这个感到困惑,因为我制作的短代码功能在一个 php 文件中,而其他功能可以很好地处理 html 代码上的文本。正是这个函数添加了标签。

我使用 Dreamweaver CS5 进行编码。但是我尝试使用 notepad2 进行编辑,但结果相同。

最佳答案

WordPress 添加包装 <p><br />在页面/帖子编辑器中。我假设这就是您输入短代码的地方。

更新

OP 找到了解决方案 - http://www.simonbattersby.com/blog/2009/08/stop-wordpress-adding-br-tags/

关于php - 当代码中未指明时,为什么我的代码输出包含额外的 <br> 和 <p> 标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5798740/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com