PDA

View Full Version : استفاده از وب سرویس برای صفحات وردپرس



sara.nikzadeh
چهارشنبه 03 تیر 1394, 19:06 عصر
با سلام خدمت دوستان عزیز
من یه سایتی دارم که با ورد پرس کار میکنه. حالا میخوام از دوستان بپرسم که میشه اظلاعات داخل سایت رو توسط وب سرویس به گوشی انتقال داد.
این هم اضاقه کنم که سایت خبری هست و دیتا بیس نداره.
لطفا دوستان راهنماییم کنن.
با تشکر فراوان از همه بچه های انجمن

smemamian
چهارشنبه 03 تیر 1394, 19:38 عصر
سلام
مگه میشه وردپرس دیتابیس نداشته باشه ؟!

برای کار با وردپرس، باید از توابع خود وردپرس استفاده کنید ! به فکر این نباشید که خودتان کوئری بنویسید ! چون عملاً وقتتون رو بسیار
میگیره و نتایج خوبی هم دریافت نمی کنید. خود توابع وردپرس جامع و کامل و بهینه هستند(هر چند خود وردپرس بهینه نیست). برای استفاده
از توابع وردپرس هم شما در هاست سایت یک فایل php مثلاً index.php ایجاد می کنید و فایل wp-blog-header.php در وردپرس رو در بالای
فایل index.php باید include کنید:
پس محتوای فایل inxed.php این میشه. که برای مثال من یک تابع نوشتم که 5 مطلب آخر رو دریافت می کنه :


<?php
error_reporting(0);
define( 'WP_USE_THEMES', false );
require('../../../wp-blog-header.php');
ini_set('default_charset',"UTF-8");
mysql_set_charset('utf8');
header('Content-type: text/html; charset=UTF-8') ;

class DB_Functions {


function __construct() {


}


function __destruct() {

}


//To get last items
function getLastItemsSite()
{



$args = array(
'numberposts' => 5,
'offset' => 0,
'category' => 0,
'orderby' => 'post_date',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish',
'suppress_filters' => true );

$recent_posts = wp_get_recent_posts( $args, ARRAY_A );

$mjson = array();


foreach( $recent_posts as $recent ){

$thumb = wp_get_attachment_image_src( get_post_thumbnail_id($recent['ID']), array(200,200) );
$url_img = $thumb['0'];

$marr = array(
'id'=>$recent["ID"],
'title'=>$recent["post_title"],
'img'=>$url_img
);

array_push($mjson,$marr);

}

return $mjson ;



}//end get last items




}

?>

که در اینجا :

wp_get_recent_posts

یک تابع از پیش نوشته شده توسط وردپرس می باشد.

نکته:

فایل wp-blog-header در مسیر شاخه blog هاست شما یعنی www.yoursite.com/blog (http://www.yoursite.com/blog) می باشد. پس باید فراخوانی زیر رو ویرایش کنید:


require('../../../wp-blog-header.php');

موفق و پایدار

amin_lni
چهارشنبه 03 تیر 1394, 20:05 عصر
http://forum.persiantools.com/threads/%D9%81%D8%B1%D9%88%D8%B4-%D8%A7%D9%BE%D9%84%DB%8C%DA%A9%DB%8C%D8%B4%D9%86-%D8%A7%D9%86%D8%AF%D8%B1%D9%88%DB%8C%D8%AF-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%B3%D8%A7%DB%8C%D8%AA%E2%80%8C%D9%87%D8%A7%DB%8 C-%D9%88%D8%B1%D8%AF%D9%BE%D8%B1%D8%B3%DB%8C.703282/

sara.nikzadeh
پنج شنبه 04 تیر 1394, 18:42 عصر
سلام
مگه میشه وردپرس دیتابیس نداشته باشه ؟!

برای کار با وردپرس، باید از توابع خود وردپرس استفاده کنید ! به فکر این نباشید که خودتان کوئری بنویسید ! چون عملاً وقتتون رو بسیار
میگیره و نتایج خوبی هم دریافت نمی کنید. خود توابع وردپرس جامع و کامل و بهینه هستند(هر چند خود وردپرس بهینه نیست). برای استفاده
از توابع وردپرس هم شما در هاست سایت یک فایل php مثلاً index.php ایجاد می کنید و فایل wp-blog-header.php در وردپرس رو در بالای
فایل index.php باید include کنید:
پس محتوای فایل inxed.php این میشه. که برای مثال من یک تابع نوشتم که 5 مطلب آخر رو دریافت می کنه :


<?php
error_reporting(0);
define( 'WP_USE_THEMES', false );
require('../../../wp-blog-header.php');
ini_set('default_charset',"UTF-8");
mysql_set_charset('utf8');
header('Content-type: text/html; charset=UTF-8') ;

class DB_Functions {


function __construct() {


}


function __destruct() {

}


//To get last items
function getLastItemsSite()
{



$args = array(
'numberposts' => 5,
'offset' => 0,
'category' => 0,
'orderby' => 'post_date',
'order' => 'DESC',
'post_type' => 'post',
'post_status' => 'publish',
'suppress_filters' => true );

$recent_posts = wp_get_recent_posts( $args, ARRAY_A );

$mjson = array();


foreach( $recent_posts as $recent ){

$thumb = wp_get_attachment_image_src( get_post_thumbnail_id($recent['ID']), array(200,200) );
$url_img = $thumb['0'];

$marr = array(
'id'=>$recent["ID"],
'title'=>$recent["post_title"],
'img'=>$url_img
);

array_push($mjson,$marr);

}

return $mjson ;



}//end get last items




}

?>

که در اینجا :

wp_get_recent_posts

یک تابع از پیش نوشته شده توسط وردپرس می باشد.

نکته:

فایل wp-blog-header در مسیر شاخه blog هاست شما یعنی www.yoursite.com/blog (http://www.yoursite.com/blog) می باشد. پس باید فراخوانی زیر رو ویرایش کنید:


require('../../../wp-blog-header.php');

موفق و پایدار

دوست من ممنون از راهنمایی کاملتون