WordPress主题消除了我的PayPal购买链接的&符,之后又删除了所有文本

核心过载

我在名为“信念”(由Chimpstudio编写)的主题中遇到了一个奇怪的错误。当用户发布或更新页面时,PayPal链接无法正确写入数据库。

据我所知,写入数据库的值包含在XML数组中,如下所示:

noSimpleXMLElement Object ( [0] => https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick )

在单击“发布/更新”之前,应该发布/更新的链接是:

https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id = XXXXXXXXXXXXX

&hosted_button_id = XXXXXXXXXXXXX ”未保存,这意味着用户无法购买我的客户的产品。

可能的解决方案:我一直在研究主题的.php文件,寻找机会拦截传递给WordPress数据库的值。这个想法是在将变量发送到WP数据库之前对其进行包装/编码,希望整个URL字符串在URL的“ &hosted_button_id = XXXXXXXXXXXXX ”部分保持不变

有什么解决方案或想法可能会有所帮助吗?

编辑:这可能是来自admin_functions.php文件的相关代码:

function events_meta_save($post_id) {

    global $wpdb;

    if (empty($_POST["event_ticket_price"])){ $_POST["event_ticket_price"] = "";}

    if (empty($_POST["event_social_sharing"])){ $_POST["event_social_sharing"] = "";}

    if (empty($_POST["event_buy_now"])){ $_POST["event_buy_now"] = "";}

    if (empty($_POST["event_phone_no"])){ $_POST["event_phone_no"] = "";}

    if (empty($_POST["switch_footer_widgets"])){ $_POST["switch_footer_widgets"] = "";}

    if (empty($_POST["event_start_time"])){ $_POST["event_start_time"] = "";}

    if (empty($_POST["event_end_time"])){ $_POST["event_end_time"] = "";}

    if (empty($_POST["event_all_day"])){ $_POST["event_all_day"] = "";}

    if (empty($_POST["event_address"])){ $_POST["event_address"] = "";}

     if (empty($_POST["event_ticket_options"])){ $_POST["event_ticket_options"] = "";}

    if (empty($_POST["event_map"])){ $_POST["event_map"] = "";}


    $sxe = new SimpleXMLElement("<event></event>");


        $sxe->addChild('event_ticket_price', $_POST['event_ticket_price'] );


        $sxe->addChild('event_social_sharing', $_POST["event_social_sharing"]);

        $sxe->addChild('event_buy_now', $_POST["event_buy_now"]);

        $sxe->addChild('event_phone_no', $_POST["event_phone_no"]);

        $sxe->addChild('switch_footer_widgets', $_POST["switch_footer_widgets"]);

        $sxe->addChild('event_start_time', $_POST["event_start_time"]);

        $sxe->addChild('event_end_time', $_POST["event_end_time"]);

        $sxe->addChild('event_all_day', $_POST["event_all_day"]);

        $sxe->addChild('event_ticket_options', $_POST["event_ticket_options"]);

        $sxe->addChild('event_address', $_POST["event_address"]);

        $sxe->addChild('event_map', $_POST["event_map"]);

    echo "<pre>BPOST: ".print_r($_POST, true)."</pre>";
    print_r($sxe);

    $sxe = save_layout_xml($sxe);
    print_r($sxe);
    update_post_meta($post_id, 'cs_event_meta', $sxe->asXML());

}

此外,这是来自events.php文件的XML方面的更多代码:

// event custom fields start
add_action( 'add_meta_boxes', 'cs_event_meta' );  
function cs_event_meta()
{
    add_meta_box( 'event_meta', 'Event Options', 'cs_event_meta_data', 'events', 'normal', 'high' );
}
function cs_event_meta_data($post) {
    $cs_event_meta = get_post_meta($post->ID, "cs_event_meta", true);
    global $cs_xmlObject;
    if ( $cs_event_meta <> "" ) {
        $cs_xmlObject = new SimpleXMLElement($cs_event_meta);
            $event_ticket_price = $cs_xmlObject->event_ticket_price;
            $event_social_sharing = $cs_xmlObject->event_social_sharing;
            $event_start_time = $cs_xmlObject->event_start_time;
            $event_end_time = $cs_xmlObject->event_end_time;
            $event_all_day = $cs_xmlObject->event_all_day;
            $event_address = $cs_xmlObject->event_address;
            $event_loc_lat = $cs_xmlObject->event_loc_lat;
            $event_loc_long = $cs_xmlObject->event_loc_long;
            $event_loc_zoom = $cs_xmlObject->event_loc_zoom;

            $testVar = $cs_xmlObject->event_buy_now;

            if (strstr($cs_xmlObject->event_buy_now, "&amp;"))
            {
                echo "yes"; //$event_buy_now = ($cs_xmlObject->event_buy_now . 'FINDME(yes)');
                print_r ($testVar);
            }
            else
            {
                echo "no"; //$event_buy_now = ($cs_xmlObject->event_buy_now . 'FINDME(no)');
                print_r ($testVar);
                print_r ($cs_xmlObject);
            }

            $event_ticket_options = $cs_xmlObject->event_ticket_options;
            $event_map = $cs_xmlObject->event_map;
    }
    else {
        $event_ticket_price = '';
        $slider_id = '';

        $event_social_sharing = '';
        $event_related = '';
        $event_start_time = '';
        $event_end_time = '';
        $event_all_day = '';
        $event_address = '';
        $event_loc_lat = '';
        $event_loc_long = '';
        $event_loc_zoom = '';
        $inside_event_related_post_title = '';
        $event_map = '';
        $event_buy_now = '';
        $event_ticket_options = '';
    }

注意:这两个代码段都位于父主题的/ include /目录中。此时,尚无子主题-如有必要,将创建子主题来实施这些更新。

即插即用

只需使用jQuery和.change()即可检测输入中的新内容。字段更改后,将&更改为&amp;。可能是一个肮脏的技巧,但是如果这介于您和发薪日之间,那就去吧。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

小写所有文本,除了xml标签

来自分类Dev

我完全删除了libsqlite3-0,所有必不可少的东西也都删除了。如何还原ubuntu?

来自分类Dev

'find -delete'删除了所有内容

来自分类Dev

带有虚拟tty链接和fork的socat删除了我的pty链接

来自分类Dev

我是否有可能在尝试删除符号链接时删除了文件?

来自分类Dev

Python读取时删除了带有奇怪的^ T分隔符的文本日志

来自分类Dev

从主目录中删除酒时,我似乎已经删除了所有文件。

来自分类Dev

我删除了桌面,所有内容都冻结了。我做了什么

来自分类Dev

如何在Ack中搜索所有文本文件?(现在删除了--text选项)

来自分类Dev

我不小心用dd删除了所有数据。有恢复的机会吗?

来自分类Dev

我的代码删除了文本中的所有标点符号,但是我们需要很少的标点符号进行情感分析吗?

来自分类Dev

Git不小心删除了我所有的更改

来自分类Dev

我是否只是使用find -exec mv删除了所有内容?

来自分类Dev

在GitHub中进行错误操作后删除了我所有的提交

来自分类Dev

意外删除了我的Linux机器上的所有环境变量

来自分类Dev

我是否只是使用find -exec mv删除了所有内容?

来自分类Dev

在Ubuntu 14.04安装后意外删除了我所有的分区

来自分类Dev

意外删除了所有别名。我该如何还原它们?

来自分类Dev

误删除了rm-rf / *的所有文件...在我的Macbook Pro中

来自分类Dev

错误同步方向 - Unison ; 删除了我所有的文件

来自分类Dev

我已经删除了所有 initramfs 文件(就像一个白痴)如何恢复它们?

来自分类Dev

Javascript打开_blank上的所有链接,除了

来自分类Dev

意外删除了记事本++中的所有行?

来自分类Dev

如何跟踪删除了git中所有分支的用户

来自分类Dev

意外删除了7天以上的所有文件

来自分类Dev

意外地从/ boot删除了所有内核文件

来自分类Dev

删除所有文件,除了两个

来自分类Dev

误删除了GParted的所有内容

来自分类Dev

Windows 10 Creator Update删除了GRUB的所有迹象

Related 相关文章

  1. 1

    小写所有文本,除了xml标签

  2. 2

    我完全删除了libsqlite3-0,所有必不可少的东西也都删除了。如何还原ubuntu?

  3. 3

    'find -delete'删除了所有内容

  4. 4

    带有虚拟tty链接和fork的socat删除了我的pty链接

  5. 5

    我是否有可能在尝试删除符号链接时删除了文件?

  6. 6

    Python读取时删除了带有奇怪的^ T分隔符的文本日志

  7. 7

    从主目录中删除酒时,我似乎已经删除了所有文件。

  8. 8

    我删除了桌面,所有内容都冻结了。我做了什么

  9. 9

    如何在Ack中搜索所有文本文件?(现在删除了--text选项)

  10. 10

    我不小心用dd删除了所有数据。有恢复的机会吗?

  11. 11

    我的代码删除了文本中的所有标点符号,但是我们需要很少的标点符号进行情感分析吗?

  12. 12

    Git不小心删除了我所有的更改

  13. 13

    我是否只是使用find -exec mv删除了所有内容?

  14. 14

    在GitHub中进行错误操作后删除了我所有的提交

  15. 15

    意外删除了我的Linux机器上的所有环境变量

  16. 16

    我是否只是使用find -exec mv删除了所有内容?

  17. 17

    在Ubuntu 14.04安装后意外删除了我所有的分区

  18. 18

    意外删除了所有别名。我该如何还原它们?

  19. 19

    误删除了rm-rf / *的所有文件...在我的Macbook Pro中

  20. 20

    错误同步方向 - Unison ; 删除了我所有的文件

  21. 21

    我已经删除了所有 initramfs 文件(就像一个白痴)如何恢复它们?

  22. 22

    Javascript打开_blank上的所有链接,除了

  23. 23

    意外删除了记事本++中的所有行?

  24. 24

    如何跟踪删除了git中所有分支的用户

  25. 25

    意外删除了7天以上的所有文件

  26. 26

    意外地从/ boot删除了所有内核文件

  27. 27

    删除所有文件,除了两个

  28. 28

    误删除了GParted的所有内容

  29. 29

    Windows 10 Creator Update删除了GRUB的所有迹象

热门标签

归档