创建一个清理自定义Metabox摘录的函数

时间:2013-07-05 作者:Dannyw24

我仍在掌握函数并尝试使用不同的php函数。

我已经创建了一个我想与自定义metabox摘录同步使用的函数。它将基本上清理数据,并确保其长度为150个字符,第一个单词以大写字母开头。

在测试功能时,我的代码非常松散,但我有点不知所措,很抱歉出现了任何简单的错误。

$test\\u摘录只是为了测试它,但目前它没有输出任何内容。

代码如下。

<?php

//Function that trims any access spaces either side of the excerpt incase it fails the validation run

$text_excerpt = "test";

function vs_trim_excerpt($text_excerpt) {
    if(isset($text_excerpt)) {
    trim($text_excerpt);
    ucfirst($text_excerpt);
    wordwrap($text_excerpt, 150);
    return $test_excerpt();
    } 
}

vs_trim_excerpt();
?>

add_action(\'init\', \'vs_trim_excerpt\');

2 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

我不确定这是一个WordPress问题。这实际上更像是糟糕的PHP,但由于这是一个过滤器,本着培养善意的精神。。。

您的功能是return调用一个不存在的变量名函数,并且不会保存任何操作。您正在处理字符串,但没有保留更改。您需要将结果分配给变量。而且,您没有向函数提供任何信息。

$text_excerpt = "test";
function vs_trim_excerpt($text_excerpt) {
    $text_excerpt = trim($text_excerpt);
    $text_excerpt = ucfirst($text_excerpt);
    $text_excerpt = wordwrap($text_excerpt, 150);
    return $text_excerpt;
} 
echo vs_trim_excerpt($text_excerpt);
这应该会更好。

SO网友:s1lv3r

您缺少一些编程的基本概念。

仅仅因为您在第一行中定义了一个变量,它在您的函数范围内不可用(它只存在于全局命名空间中)。您调用的函数实际上也返回值。您需要将返回值分配给变量才能使用它。例如,查看PHP手册trim():

返回值:修剪的字符串。

您应该始终阅读手册页面中所使用的函数,以便查看它们是否返回任何内容以及返回的形式。

function vs_trim_excerpt($text_excerpt) {
    $text_excerpt = trim($text_excerpt);
    $text_excerpt = ucfirst($text_excerpt);
    $text_excerpt = wordwrap($text_excerpt, 150);
    return $text_excerpt;
} 

$text_excerpt = "test";
$new_excerpt = vs_trim_excerpt($text_excerpt);
var_dump($new_excerpt);

结束

相关推荐

通过函数将输入字段添加到‘Pages>编辑页面’。php

原始问题:我正在尝试将输入字段添加到“页面>编辑页面”。此输入字段的使用将由用户添加滑块的ID,以便滑块特定于页面。示例:用户将幻灯片ID添加到编辑页面屏幕的输入字段中页面输入该ID。感谢所有回应的人,你们是一个很棒的社区,我从这个网站得到了极好的帮助,谢谢!FINAL RESULTfunctions.php// Add custom Slider ID field to \'Edit Page\' add_action( \'add_meta_boxes\', \'cd_meta_box_