PDA

View Full Version : ارسال پست در Wordpress با دلفی



عقاب سیاه
چهارشنبه 25 آبان 1390, 17:09 عصر
سلام آیا امکان ارسال پست در وردپرس به وسیله دلفی هست؟
اگه دوستان راهنمایی کنند الته من خودم یکم گشتم ولی چیز درست حسابی نجستم یعنی من متوجه نشدم!

ممنون می شم دوستان راهنمایی کنند

عقاب سیاه
چهارشنبه 25 آبان 1390, 17:13 عصر
اینهم درباره ی همین مسئله:

http://www.delphigl.com/forum/viewtopic.php?t=8083

عقاب سیاه
چهارشنبه 02 آذر 1390, 20:21 عصر
من به این نتیجه رسیدم که باید از webServis استفاده کنم! توی عکسای زیر نحوه استفاده از وبسرویس را نشان داده انگار که نرم افزار فلشه برای دلفی چجوری میشه این کار را کرد؟

7829678298782977829978300


ممنون

عقاب سیاه
چهارشنبه 02 آذر 1390, 21:09 عصر
من از طریق منوی کامپوننت تونستم وبسرویس را وارد دلفی کنم! ولی هر کاری می کنم نمی تونم ازش استفاده کنم1
بعد از وارد کردن به عنوان یک یونیت ذخیره شد و من هر کاری می کنم با استفاده از متد هاش هیچ پستی ارسال نمیشه؟؟؟؟؟؟!!!!!!!!

vcldeveloper
پنج شنبه 03 آذر 1390, 00:42 صبح
آیا امکان ارسال پست در وردپرس به وسیله دلفی هست؟
بله، WordPress به طور پیش فرض چند مدل مختلف ارسال پست از راه دور را پشتیبانی میکنه، که یکی از اونها استفاده از XML-RPC هست. برای ارسال و دریافت با این روش، یا باید دنبال کامپوننت ها و کتابخانه های خاصی بگردید که این پروتکل را کپسوله کرده باشند، یا اینکه خودتون با استفاده از XML و یک اتصال HTTP (مثلا با استفاده از TIdHttp در Indy)، و کمی مطالعه درباره XML-RPC و راهنمای WordPress برای ارتباط با رابط XML-RPC آن، کدهای مربوطه را پیاده سازی کنید. نرم افزارهایی مثل Windows Live Writer مایکروسافت از همین مکانیزم برای اتصال به یک وبلاگ وردپرس و ارسال پست به آن استفاده می کنند. البته دقت داشته باشید که برای استفاده از این قابلیت یا هر قابلیت دیگه ارسال از راه دور در وردپرس باید آن قابلیت خاص را در تنظیمات WordPress فعال کرده باشید، وگرنه امکان ارسال از راه دور را نخواهید داشت.

عقاب سیاه
پنج شنبه 03 آذر 1390, 14:36 عصر
آقای کشاورز خیلی ممنون
کدوم راه آسون تره برای اتصال؟

vcldeveloper
پنج شنبه 03 آذر 1390, 15:48 عصر
کدوم راه آسون تره برای اتصال؟
همین XML-RPC با توجه به قابلیت های ارائه میکنه، گزینه مناسبی هست. البته به طور کلی ارسال از طریق ایمیل به نظر راحتتر از XML-RPC هست، ولی در اکثر وبلاگ ها این گزینه غیرفعال هست، و احتمال اینکه کاربر بخواد XML-RPC را فعال کنه، بیشتر از این هست که بخواد گزینه ارسال از طریق ایمیل را فعال کنه.

عقاب سیاه
پنج شنبه 03 آذر 1390, 15:54 عصر
ممنون
من XML-RPC را با یک افزونه در وروپرس فعال کردم و با دادن ادرسش به دلفی به عنوان یک یونیت در امد که آن را ذخیره کردم اما با توابعی که درون اون یونیت هست هرکاری می کنم نمی تونم کار کنم یعنی اصلا خروجی نمی دن!

من آدرس XML-RPC سایت را براتون از طریق پیغام خصوصی ارسال کردم میشه لطف کنید بگید چجوری باید از توابعش توی دلفی استفاده کنم؟

vcldeveloper
پنج شنبه 03 آذر 1390, 16:20 عصر
من XML-RPC را با یک افزونه در وروپرس فعال کردم
XML-RPC نیاز به افزونه نداره؛ به طور عادی از داخل تنظیمات مربوط به Writing در WordPress قابل فعال سازی هست.


با دادن ادرسش به دلفی به عنوان یک یونیت در امد که آن را ذخیره کردم اما با توابعی که درون اون یونیت هست هرکاری می کنم نمی تونم کار کنم یعنی اصلا خروجی نمی دن!
XML-RPC یک وب سرویس مبتنی بر SOAP نیست که آدرسش را به WSDL Importer دلفی بدید، تا دلفی براتون یک یونیت رابط ایجاد کنه. در دلفی به طور پیش فرض ابزار اختصاصی برای کار با XML-RPC نصب نمیشه. برای کار با اون، همانطور که در پست اول خودم هم گفتم، باید خودتون محتوای XML مربوطه را آماده کنید، و با یک ابزار اتصال مبتنی بر HTTP، مثل IdHTTP، محتوای مربوطه را به سرور ارسال کنید. جواب برگشتی هم به صورت XML خواهد بود، که باید اون رو Parse (مثلا با استفاده از TXmlDocument) کنید. ممکنه کامپوننت های اختصاصی برای کار با XML-RPC هم برای دلفی وجود داشته باشه که با جستجو در اینترنت بتونید ازشون استفاده کنید.

عقاب سیاه
پنج شنبه 03 آذر 1390, 16:23 عصر
این جوری که خیلی سخت شد!
ممنون
پس من برم دنبال این کار ها که گفتین ببینم به نتیجه می رسم یانه!

عقاب سیاه
پنج شنبه 03 آذر 1390, 16:25 عصر
بخشید پس اون یونتی که این جوری ایجاد شده اصلا هیچ کاری نمی کنه؟

dark-man
شنبه 12 آذر 1390, 18:42 عصر
بخشید پس اون یونتی که این جوری ایجاد شده اصلا هیچ کاری نمی کنه؟

عقاب جان ، منم همین مشکل رو داشتم و البته مشکل رو به روش زیر حل کردم که با اکثر ساختارهای xml-rpc سازگار هست . امیدوارم به دردت بخوره .

procedure TForm1.Button1Click(Sender: TObject);
var
PostDataStream : TStringStream;
ParamData : TStringStream;
begin
PostDataStream := TStringStream.Create('');
ParamData := TStringStream.Create('');
ParamData.WriteString('<?xml version="1.0" encoding="UTF-8"?>');
ParamData.WriteString('<methodCall>');
ParamData.WriteString('<methodName>system.listMethods</methodName>');
ParamData.WriteString('<params></params>');
ParamData.WriteString('</methodCall>');
try
//Connect
IdHTTP1.Post('http://localhost/wordpress/xmlrpc.php', ParamData, PostDataStream);
Memo2.Text := PostDataStream.DataString;
finally
ParamData.Free;
PostDataStream.Free;
end;
// Parse the rich edit text here
end;

عقاب سیاه
شنبه 12 آذر 1390, 18:54 عصر
ممنون لطف کردین!!!!!!
می گم حالا چطوری باید از این کد شما استفاده کرد میشه بیشت راهنمایی کنید!!!!
یه مثالی چیزی مثلا از ارسال پست با رمز (رمز دسترسی به اون پست) اگه بزارید که دیگه ما را حسابی شرمنده می کنید.

dark-man
شنبه 12 آذر 1390, 20:53 عصر
ممنون لطف کردین!!!!!!
می گم حالا چطوری باید از این کد شما استفاده کرد میشه بیشت راهنمایی کنید!!!!
یه مثالی چیزی مثلا از ارسال پست با رمز (رمز دسترسی به اون پست) اگه بزارید که دیگه ما را حسابی شرمنده می کنید.

الان دقیقا" مستندات وردپرس یادم نیست ، این ایمیل من هست : hadi.jami@gmail.com ، بهم ایمیل بزنید یاد آوری کنید تا دوباره بررسی کنم بهتون بگم ، ولی اگه خودتون هم یه بار مستندات وردپرس رو بخونید متوجه میشید . خیلی ساده است .