Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.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

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
Woocommerce钩子在非主题php文件中的用法_Php_Wordpress_Woocommerce_Custom Wordpress Pages_Wordpress Hook - Fatal编程技术网

Woocommerce钩子在非主题php文件中的用法

Woocommerce钩子在非主题php文件中的用法,php,wordpress,woocommerce,custom-wordpress-pages,wordpress-hook,Php,Wordpress,Woocommerce,Custom Wordpress Pages,Wordpress Hook,我正在进行woocommerce集成wordpress安装 我创建了一个独立的“SearchByNumber.php”文件,并将其放入路径:/wp content/plugins/ajax test 通常它不是一个真正的插件(我不熟悉编写插件)。它是卷曲一个web服务并在xml中获得结果 我想做的是从这个xml循环SKU,并从woocommerce获取它们的ID、价格、库存等 我试了很多次,但每次都会出现不同的错误:找不到类、找不到方法、空对象等等 global $product; // a l

我正在进行woocommerce集成wordpress安装

我创建了一个独立的“SearchByNumber.php”文件,并将其放入路径:/wp content/plugins/ajax test

通常它不是一个真正的插件(我不熟悉编写插件)。它是卷曲一个web服务并在xml中获得结果

我想做的是从这个xml循环SKU,并从woocommerce获取它们的ID、价格、库存等

我试了很多次,但每次都会出现不同的错误:找不到类、找不到方法、空对象等等

global $product;
// a lot codes curling, looping, etc...
$product_id = $product->get_product_id_by_sku($sku_from_xml);
$product = wc_get_product($product_id);
$sku = $product->get_sku();
// or
$price = $product->get_price();
我试图通过SKU找到产品的ID,然后从产品中获得我想要的任何东西

PS:我在产品页面的php代码片段中使用这些
$product->get_sku()
$product->get_属性('Brand')
。他们在那里工作得很好

如何挂钩、过滤、分类??我做错了什么

我将感谢你的任何帮助

非常感谢,


Murat

除非加载Wordpress,否则无法访问任何函数或类

因此,如果要从独立脚本加载Wordpress,需要执行以下操作:

<?php
require '../../../wp-load.php'; //Load WordPress



$product_id = wc_get_product_id_by_sku( 'test' ); //get the product id

if ( $product_id ) {
    $product = wc_get_product( $product_id ); //get the product
    $price   = $product->get_price(); //get the price
    echo $price;
}
然后转到Wordpress后端并激活插件

现在您可以访问所有WordPress和Woocommerce挂钩

您可以通过以下链接查看WordPress插件参考:


除非加载Wordpress,否则无法访问任何函数或类

因此,如果要从独立脚本加载Wordpress,需要执行以下操作:

<?php
require '../../../wp-load.php'; //Load WordPress



$product_id = wc_get_product_id_by_sku( 'test' ); //get the product id

if ( $product_id ) {
    $product = wc_get_product( $product_id ); //get the product
    $price   = $product->get_price(); //get the price
    echo $price;
}
然后转到Wordpress后端并激活插件

现在您可以访问所有WordPress和Woocommerce挂钩

您可以通过以下链接查看WordPress插件参考:


Hi@kashalo,谢谢你的帮助<代码>要求($_服务器['DOCUMENT_ROOT'..]./wp load.php')为我工作。但是如果你这么说的话,我更喜欢你的第二个建议。我的“SearchByNumber.php”文件正在从另一个wordpress页面接受一个发布的参数,然后搜索这个发布的参数。目前,它大约有300行,并且正在统计。有很多if/else、foreach等,有点复杂。如何将其转换为插件?@Murat您可以按照上面的参考链接创建自己的插件,并且有大量视频教程将指导您一步一步地使用@kashalo,thx。我已经接受了你的回答。顺便问一下,调用wp load
require($_SERVER['DOCUMENT\u ROOT'.]./wp load.php')是否正确?如果是
require
require\u once
?@Murat这两种方法都适用于您,您可以使用
require\u once
,如果您觉得youHi@kashalo更方便,多谢您的帮助<代码>要求($_服务器['DOCUMENT_ROOT'..]./wp load.php')为我工作。但是如果你这么说的话,我更喜欢你的第二个建议。我的“SearchByNumber.php”文件正在从另一个wordpress页面接受一个发布的参数,然后搜索这个发布的参数。目前,它大约有300行,并且正在统计。有很多if/else、foreach等,有点复杂。如何将其转换为插件?@Murat您可以按照上面的参考链接创建自己的插件,并且有大量视频教程将指导您一步一步地使用@kashalo,thx。我已经接受了你的回答。顺便问一下,调用wp load
require($_SERVER['DOCUMENT\u ROOT'.]./wp load.php')是否正确?如果是
require
require\u once
?@Murat这两种方法都适用于您,如果您觉得更方便,您可以使用
require\u once