亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將帶有短代碼的 SQL 查詢顯示到 WordPress 前端

如何將帶有短代碼的 SQL 查詢顯示到 WordPress 前端

PHP
慕森王 2022-09-12 13:04:58
我使用文字壓縮與伍商務。某些訂單不僅應該在后端可見,在前端也應該可見?,F在我已經創建了一個SQL查詢(在phpMy管理員中工作)。結果應顯示在網站上的表格中。SELECT            p.ID as order_id,            p.post_date,            max( CASE WHEN pm.meta_key = 'donateAnonym' AND p.ID = pm.post_id THEN pm.meta_value END ) as donateAnonym,            max( CASE WHEN pm.meta_key = '_billing_email' AND p.ID = pm.post_id THEN pm.meta_value END ) as billing_email,            max( CASE WHEN pm.meta_key = '_billing_first_name' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_first_name,            max( CASE WHEN pm.meta_key = '_billing_last_name' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_last_name,            max( CASE WHEN pm.meta_key = '_billing_city' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_city,            max( CASE WHEN pm.meta_key = '_billing_state' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_state,            max( CASE WHEN pm.meta_key = '_order_total' AND p.ID = pm.post_id THEN pm.meta_value END ) as order_total,            ( SELECT GROUP_CONCAT( order_item_name separator '|' ) FROM wp_woocommerce_order_items WHERE order_id = p.ID ) as order_items        FROM            wp_posts p             JOIN wp_postmeta pm on p.ID = pm.post_id            JOIN wp_woocommerce_order_items oi on p.ID = oi.order_id        GROUP BY            p.ID我已將此代碼添加到主題的函數.php文件中?,F在,可以通過添加到任何頁面或帖子來顯示來自函數的信息。[showAllHrOrdersTable]add_shortcode( 'showAllHrOrdersTable', 'showAllHrOrders' );function showAllHrOrders( $args ) {}如何實現我的sql查詢而沒有任何錯誤?
查看完整描述

1 回答

?
30秒到達戰場

TA貢獻1828條經驗 獲得超6個贊

您忘記在 以下位置轉義引號:$SQLstring


$SQLstring = 'SELECT

            p.ID as order_id,

            p.post_date,

            max( CASE WHEN pm.meta_key = \'donateAnonym\' AND p.ID = pm.post_id THEN pm.meta_value END ) as donateAnonym,

            max( CASE WHEN pm.meta_key = \'_billing_email\' AND p.ID = pm.post_id THEN pm.meta_value END ) as billing_email,

            max( CASE WHEN pm.meta_key = \'_billing_first_name\' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_first_name,

            max( CASE WHEN pm.meta_key = \'_billing_last_name\' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_last_name,

            max( CASE WHEN pm.meta_key = \'_billing_city\' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_city,

            max( CASE WHEN pm.meta_key = \'_billing_state\' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_state,

            max( CASE WHEN pm.meta_key = \'_order_total\' AND p.ID = pm.post_id THEN pm.meta_value END ) as order_total,

            ( SELECT GROUP_CONCAT( order_item_name separator \'|\' ) FROM wp_woocommerce_order_items WHERE order_id = p.ID ) as order_items

        FROM

            wp_posts p 

            JOIN wp_postmeta pm on p.ID = pm.post_id

            JOIN wp_woocommerce_order_items oi on p.ID = oi.order_id

        GROUP BY

            p.ID';

更好,更易讀:


$SQLstring = "SELECT

            p.ID as order_id,

            p.post_date,

            max( CASE WHEN pm.meta_key = 'donateAnonym' AND p.ID = pm.post_id THEN pm.meta_value END ) as donateAnonym,

            max( CASE WHEN pm.meta_key = '_billing_email' AND p.ID = pm.post_id THEN pm.meta_value END ) as billing_email,

            max( CASE WHEN pm.meta_key = '_billing_first_name' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_first_name,

            max( CASE WHEN pm.meta_key = '_billing_last_name' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_last_name,

            max( CASE WHEN pm.meta_key = '_billing_city' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_city,

            max( CASE WHEN pm.meta_key = '_billing_state' AND p.ID = pm.post_id THEN pm.meta_value END ) as _billing_state,

            max( CASE WHEN pm.meta_key = '_order_total' AND p.ID = pm.post_id THEN pm.meta_value END ) as order_total,

            ( SELECT GROUP_CONCAT( order_item_name separator '|' ) FROM wp_woocommerce_order_items WHERE order_id = p.ID ) as order_items

        FROM

            wp_posts p 

            JOIN wp_postmeta pm on p.ID = pm.post_id

            JOIN wp_woocommerce_order_items oi on p.ID = oi.order_id

        GROUP BY

            p.ID";


查看完整回答
反對 回復 2022-09-12
  • 1 回答
  • 0 關注
  • 89 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號