Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php WordPress-显示190-250之间的随机数_Php_Wordpress_Random - Fatal编程技术网

Php WordPress-显示190-250之间的随机数

Php WordPress-显示190-250之间的随机数,php,wordpress,random,Php,Wordpress,Random,有人知道在特定页面中显示190-250之间的随机数的方法吗 例如: 今天我要显示随机数咖啡。我要实现这一点的方法是使用一个短代码,如下所示: function na_random_number_shortcode( $atts ) { global $post; $args = shortcode_atts( array( 'min' => 190, 'max' => 250,

有人知道在特定页面中显示190-250之间的随机数的方法吗

例如:
今天我要显示随机数咖啡。

我要实现这一点的方法是使用一个短代码,如下所示:

function na_random_number_shortcode( $atts ) {
    global $post;

    $args = shortcode_atts(
        array(
            'min'  => 190,
            'max' => 250,
            'id' => $post->ID,
            'hours' => 24
        ),
        $atts, 'random_number'
    );

    // Use transient to store the random number temporarily 
    if ( false === ( $random_number = get_transient( 'random_number_'.$args['id'] ) ) ) {
        $random_number = mt_rand( (int) $args['min'], (int) $args['max'] );
        set_transient( 'random_number_'.$args['id'], $random_number, HOUR_IN_SECONDS * $args['hours'] );
    }

    return $random_number;
}
add_shortcode( 'random_number', 'na_random_number_shortcode' );
将该代码放入主题的functions.php文件将允许您输入

“今天我喝了[随机数]咖啡。”

并显示一个介于190和250之间的随机数

它也很灵活;您可以执行类似于
[random_number min=“1”max=“10”]
的操作来获得1到10之间的随机数

默认情况下,它将记住随机数24小时。您可以通过传递“小时”属性来更改此设置,如:
[random\u number hours=“12”]


如果你在一个页面上有多个,并且你希望数字不同,你必须给每个数字一个唯一的id。因此,如果你有两个,你可以这样做:
[random\u number id=“1”]
[random\u number id=“2”]

我实现这一点的方法是使用一个短代码,如下所示:

function na_random_number_shortcode( $atts ) {
    global $post;

    $args = shortcode_atts(
        array(
            'min'  => 190,
            'max' => 250,
            'id' => $post->ID,
            'hours' => 24
        ),
        $atts, 'random_number'
    );

    // Use transient to store the random number temporarily 
    if ( false === ( $random_number = get_transient( 'random_number_'.$args['id'] ) ) ) {
        $random_number = mt_rand( (int) $args['min'], (int) $args['max'] );
        set_transient( 'random_number_'.$args['id'], $random_number, HOUR_IN_SECONDS * $args['hours'] );
    }

    return $random_number;
}
add_shortcode( 'random_number', 'na_random_number_shortcode' );
将该代码放入主题的functions.php文件将允许您输入

“今天我喝了[随机数]咖啡。”

并显示一个介于190和250之间的随机数

它也很灵活;您可以执行类似于
[random_number min=“1”max=“10”]
的操作来获得1到10之间的随机数

默认情况下,它将记住随机数24小时。您可以通过传递“小时”属性来更改此设置,如:
[random\u number hours=“12”]


如果您在一个页面上有多个,并且您希望这些数字不同,那么您必须为每个数字指定一个唯一的id。因此,如果您有两个,您可以这样做:
[random\u number id=“1”]
[random\u number id=“2”]
您还可以在需要的页面中使用PHP
rand
函数:

echo(rand(190,250));

您还可以在需要的页面中使用PHP
rand
函数:

echo(rand(190,250));

您是否尝试过php中的任何随机数函数??如果在特定页面中,那么我建议您使用内联JavaScript,或者如果可能,与一些jQuery一起使用。您是否搜索过任何短代码插件?即使没有,制作一个插件也需要5分钟,具体取决于你想在文章或页面中的什么位置以及如何显示它。它总是同一根线吗?还是一个例子?我可以想出5到6种不同的方法,从jQuery到过滤器再到纯PHP——所有这些都取决于上述内容……您是否尝试过PHP中的任意随机数函数??如果在特定页面中,那么我建议您使用内联JavaScript,或者如果可能的话,使用一些jQuery。您是否搜索过任何短代码插件?即使没有,制作一个插件也需要5分钟,具体取决于你想在文章或页面中的什么位置以及如何显示它。它总是同一根线吗?还是一个例子?我可以想出5到6种不同的方法,从jQuery到过滤器再到纯PHP——所有这些都取决于上面的内容……太棒了!非常感谢你!是否可以在24小时后显示新号码?所以每24小时会显示一个新的随机数?是的,但是一页上会有超过1个这样的随机数吗?我的解决方案将取决于这个答案。我更新了代码,使它能够使用瞬态记忆24小时。瞬变是完美的,因为它们是用来暂时储存东西的。如果一个页面上需要超过1个,只需给他们唯一的ID。嘿,Nate,不幸的是小时数商店不起作用。在使用代码并进行测试之后,经过一定的时间后,代码似乎没有改变。有没有什么东西不见了?非常感谢您的时间和努力,我真的很感激。@squidg我刚刚测试了它,将默认小时数从“24”改为“1”,然后将快捷码放在页面上。当我加载页面时,我得到了226。即使我重新装弹,它还是保持在226。然后,我等了一个小时,又重新加载,得到了一个新号码,247。太好了!非常感谢你!是否可以在24小时后显示新号码?所以每24小时会显示一个新的随机数?是的,但是一页上会有超过1个这样的随机数吗?我的解决方案将取决于这个答案。我更新了代码,使它能够使用瞬态记忆24小时。瞬变是完美的,因为它们是用来暂时储存东西的。如果一个页面上需要超过1个,只需给他们唯一的ID。嘿,Nate,不幸的是小时数商店不起作用。在使用代码并进行测试之后,经过一定的时间后,代码似乎没有改变。有没有什么东西不见了?非常感谢您的时间和努力,我真的很感激。@squidg我刚刚测试了它,将默认小时数从“24”改为“1”,然后将快捷码放在页面上。当我加载页面时,我得到了226。即使我重新装弹,它还是保持在226。然后,我等了一个小时,又重新加载,得到了一个新号码,247。