Как переделать RSS в E-commerce под себя
Если Вы уже используете E-commerce, то, несомненно, обратили внимание на не совсем адекватный собственный RSS-канал данного движка интернет-магазина! Как быть в этом случае, а очень просто: Переделать RSS в E-commerce под себя!
Сразу предупреждаю, что трудного ничего здесь нет. От Вас требуется только внимательность!
И так:
1. На всякий случай делаем бэкап сайта. Это на тот случай, если Вы будете вносить изменения непосредственно через РЕДАКТОР в ПАНЕЛИ УПРАВЛЕНИЯ WORDPRESS (Панель управления > Внешний вид > Редактор). Честно говоря, сам РЕДАКТОРОМ пользуюсь 1 раз из 100. Нудно, да и рискованно. Зачастую работаю через FTP-клиент Total Commander, используя для редактирования файлов соответствующие программы (в сети из предостаточно). Чего и Вам советую.
2) Примером будет служить Интернет-магазин по продаже СТУДЕНЧЕСКИХ РАБОТ. В папке include находим productfeed.php
3) Из файла удаляем:
$image_link = wpsc_the_product_thumbnail() ; if ($image_link !== FALSE) { if ( $xmlformat == 'google' ) { echo " <g:image_link><![CDATA[$image_link]]>\n\r";} else { echo " \n\r";}} $price = wpsc_calculate_price($post->ID); $currargs = array( 'display_currency_symbol' => false, 'display_decimal_point' => true, 'display_currency_code' => false, 'display_as_html' => false); $price = wpsc_currency_display($price, $currargs); $children = get_children(array('post_parent'=> $post->ID, 'post_type'=>'wpsc-product')); foreach ($children as $child) { $child_price = wpsc_calculate_price($child->ID); if (($price == 0) && ($child_price > 0)) { $price = $child_price; } else if ( ($child_price > 0) && ($child_price < $price) ) { $price = $child_price;}} if ( $xmlformat == 'google' ) { echo " ".$price."\n\r"; $google_elements = Array (); $product_meta = get_post_custom ( $post->ID ); if ( is_array ( $product_meta ) ) { foreach ( $product_meta as $meta_key => $meta_value ) { if ( stripos($meta_key,'g:') === 0 ) $google_elements[$meta_key] = $meta_value;}} $google_elements = apply_filters( 'wpsc_google_elements', array ( 'product_id' => $post->ID, 'elements' => $google_elements ) ); $google_elements = $google_elements['elements']; $done_condition = FALSE; $done_availability = FALSE; $done_weight = FALSE; if ( count ( $google_elements ) ) { foreach ( $google_elements as $element_name => $element_values ) { foreach ( $element_values as $element_value ) { echo " <".$element_name.">"; echo "<![CDATA[".$element_value."]]>"; echo "\n\r";} if ($element_name == 'g:shipping_weight') $done_weight = TRUE; if ($element_name == 'g:condition') $done_condition = TRUE; if ($element_name == 'g:availability') $done_availability = true;}} if (!$done_condition) echo " new\n\r"; if (!$done_availability) { if(wpsc_product_has_stock()) : $product_availability = "in stock"; else : $product_availability = "out of stock"; endif ; echo " $product_availability";} if ( ! $done_weight ) { $wpsc_product_meta = get_product_meta( $post->ID, 'product_metadata',true ); $weight = apply_filters ( 'wpsc_google_shipping_weight', $wpsc_product_meta['weight'], $post->ID ); if ( $weight && is_numeric ( $weight ) && $weight > 0 ) { echo "<g:shipping_weight>$weight pounds";}}} else { echo " ".$price."\n\r";}
4) Вместо:
description><![CDATA[".apply_filters ('the_content', get_the_content())."]]>\n\r";
вставляем:
Казусы, задачи, контрольные.........\n\r";
5) Вместо:
$self = home_url( "/index.php?rss=true&action=product_list$selected_category$selected_product" );
вставляем:
$self = home_url( "/index.php?feedgotrab" );
6) Вместо:
header('Content-Disposition: inline; filename="E-Commerce_Product_List.rss"');
вставляем:
header('Content-Disposition: inline; filename="Gotovye_paboty.rss"');
7)
echo " " . _x( 'Это RSS-лента готовых работ study.shmat.by', 'XML Feed Description', 'wpsc' ) . "\n\r"; echo " " . _x( 'study.shmat.by', 'XML Feed Generator', 'wpsc' ) . "\n\r";
8) Bместо:
echo "<..........'%s Products', 'XML Feed Title', 'wpsc'..................>\n\r";
вставляем:
echo "<..................'%s ГОТОВЫЕ РАБОТЫ', 'XML Feed Title', 'wpsc'..................>\n\r";
9) удаляем:
echo " $purchase_link\n\r";
10) добавляем дату товара:
перед:
echo " \n\r";
добавляем дату:
echo " ".get_post_time('Y-m-d H:i:s')."\n\r";
11. Сохраняем и радуемся результату.