Call to undefined function wp_insert_post()
wp_localize_script('тут handle js', 'ajax', array(
'url' => admin_url('admin-ajax.php'),
'nonce' => wp_create_nonce('ajax-custom-request'),
));
//ajax_init
add_action('init', 'auth_ajax_init');
function auth_ajax_init(){
//для не авторизированных
add_action('wp_ajax_nopriv_custom_request, 'custom_request_callback');
//для авторизированных
add_action('wp_ajax_custom_request', 'custom_request_callback');
}
function custom_request_callback(){
//Проверяем Ajax запрос на соответствие nonce коду, если не соответствует выходим
check_ajax_referer('ajax-custom-request', 'nonce_code');
//Если проверку прошли
//Здесь обрабатываем запрос, здесь доступна $_POST
wp_die();
}
let data = {
action: 'ajax-custom-request',
nonce_code: ajax.nonce,
data: здесь сериализуем данные для передачи,
};
$.post(ajax.url, data, function(data, textStatus) {
// здесь обработать ответ data
}, 'json');
Fatal error: Uncaught Error: Call to undefined function wp_insert_post()
переводится как Неустранимая ошибка: Необработанная ошибка: Вызов неопределенной функции wp_insert_post()
$arr_tovar = $result->products;
$params = [
'headers' => array(
'Authorization' => 'Basic ' . base64_encode( 'admin:123123123' )
),
'body' => [],
];
foreach ($arr_tovar as $item) {
$params['body'][] = array(
'name' => $item->name,
'status' => 'pending',
'categories' => array(
array(
'id_iiko_категории' => $item->productCategoryId
)
),
'regular_price' => $item->price
);
}
$api_response = wp_remote_post( $url_site.'/wp-json/wc/v3/products', $params);
$body = json_decode( $api_response['body'] );
if( wp_remote_retrieve_response_message( $api_response ) === 'Created' ) {
echo 'The product ' . $body->name . ' has been created';
}
print_r( $body );
у товаров id из символов и цифр
$t
- это объект, и вместо $t['category']
нужно использовать $t->category
$args = array(
'post_type' => 'product',
'meta_query' => array(
array(
'key' => 'color',
'value' => 'blue',
'compare' => 'NOT LIKE'
)
)
);
$query = new WP_Query( $args );
$(window).scroll(function (event) {
var top = $(window).scrollTop();
if(top >= 20){
//show btn
} else {
//hide btn
}
});
Добавим страницу настроек
if( function_exists('acf_add_options_page') ) {
$args = array(
'page_title' => 'Параметры',
'menu_title' => '',
'menu_slug' => 'Options',
'post_id' => 'options',
);
acf_add_options_page( $args );
}
echo get_field('phone','options');
<?php /* Template Name: Add testimonial */ ?>
<?php
acf_form_head();
get_header();
?>
<?php
acf_form(array(
'post_id' => 'new_post',
'post_title' => false,
'post_content' => true,
'new_post' => array(
'post_type' => 'testimonial',
'post_status' => 'draft'
),
'return' => home_url('thank-you'),
'submit_value' => 'Опубликовать'
));
?>
<?php get_footer(); ?>