在按钮单击时执行 php Shortcode

Posted

技术标签:

【中文标题】在按钮单击时执行 php Shortcode【英文标题】:execute php Shortcode on button click 【发布时间】:2021-03-13 08:35:50 【问题描述】:

我正在尝试在单击按钮时执行 php 短代码,但它没有运行。

html按钮代码如下..

<html>
<body>
<p align="center">
<button onclick="executeShortCode()">Refresh Date</button>

<script> 
function executeShortCode() 
alert("<?php echo do_shortcode('[Test_ShortCode]');?>");

</script>
</body>
</html>

PhP 简码如下..

<?php 
add_shortcode( 'Test_ShortCode', 'refresh_time' );
function refresh_time( )

echo "Refresh Button Press @  " . date("Y/m/d H/i/s") . "<br>";

?>

【问题讨论】:

在没有 HTTP 请求的情况下,您无法通过单击按钮执行 PHP 代码。尝试使用 jQuery GET/POST 方法。 你能推荐一个示例代码吗? @shekharsinghal 在要求为您编写代码之前,您是否进行过任何研究?在 Stack Overflow 上已经有 plenty of relevant resources 讨论这个话题。 @esqew :我已经尝试了所有可用的示例。我从过去 5-6 天开始尝试这个,但没有任何帮助。这就是为什么我正在寻找有人自己尝试过的示例代码。 【参考方案1】:

假设你有一个PHP函数

remote_function.php

<?php 
    
    function refresh_time( )
    
        echo "Refresh Button Press @  " . date("Y/m/d H/i/s") . "<br>";
    

    // call your function 
    refresh_time();
?>

现在在按钮点击时使用AJAXGET方法调用它,如下所示

<!DOCTYPE html>
<html>
<head>
    <title>Refesh date</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
    <button onclick="executeShortCode()">Refresh Date</button>
    <p id="date">Date here</p>
</body>

<script type="text/javascript">
    function executeShortCode()
    
        $.ajax(
            url: 'remote_function.php',
            type: 'get',
            success:function(data)
              document.getElementById('date').innerHTML = data;
            ,
            error: function(xhr, status, error) 
              console.log(error);
           ,
        );
    
</script>
</html>

【讨论】:

以上是关于在按钮单击时执行 php Shortcode的主要内容,如果未能解决你的问题,请参考以下文章

如何在按钮单击时关闭 uwp 中的吐司

在按钮单击时运行 php 函数

使用html按钮执行sh文件单击[重复]

使用 Jquery 在单击按钮时将 PHP 文件中的 HTML 加载/预置到 div 中

如何在单击 PHP 中的按钮时动态插入列表框?

PHP - 单击时按钮类型提交啥也不做