رفتن به مطلب

ahmad20

عضو سایت
  • تعداد ارسال‌ها

    13
  • تاریخ عضویت

  • آخرین بازدید

نوشته‌ها ارسال شده توسط ahmad20

  1. با سلام.

    یه مشکل چه در نسخه 2 بسته پارسی ساز و چه نسخه های پیشین در مورد متاتگ های ساخته شده توسط افزونه yoast وجود داره.

    متاتگ های article:published_time , article:modified_time , og:updated_time دارای استاندارد خاصی هستند و نباید به تاریخ شمسی تبدیل بشن. دقیقاً همانند تاریخ "سایت مپ"

    با فعال بود تیک "تاریخ شمسی" در بسته پارسی ساز، متاتگ های فوق الذکر به صورت زیر نمایش داده میشن:

    <meta property="article:published_time" content="۱۳۹۳/۹/۱۲ ۲۱:۱۹:۲۶" />
    <meta property="article:modified_time" content="۱۳۹۳/۹/۱۲ ۲۱:۲۷:۲۰" />
    <meta property="og:updated_time" content="۱۳۹۳/۹/۱۲ ۲۱:۲۷:۲۰" />

    درحالیکه باید به صورت زیر باشن:

    <meta property="article:published_time" content="2014-12-03T21:19:26+03:30" />
    <meta property="article:modified_time" content="2014-12-03T21:27:20+03:30" />
    <meta property="og:updated_time" content="2014-12-03T21:27:20+03:30" />

    در واقع باید تابع پارسی ساز روی این متاتگ ها غیرفعال بشه.

    اطلاعات بیشتر در مورد فرمت تاریخ:

    http://ogp.me/#datetime

    • امتیاز 1
  2. خب من یه افزونه نوشتم که اطلاعات رو تو دیتابیس به صورت شمسی ذخیره میکنه . از طریق jdf.php . چطور میتونم از اعمال تغییرات پارسی دیت فقط روی افزونه خودم جلوگیری کنم ؟ آیا تابع خاصی براش تعریف کردین یا باید از remove action و remove filter استفاده کنم ؟

    پ.ن :

    فک کنم هوک زیر کارم رو راه بندازه :

            add_filter( 'wpp_plugins_compability_settings', array( $this, 'add_settings' ) );

    تشکر

    ببخشید که من پاسختون رو میدم. چون من کاربر تازه وارد هستم!

    به نظر من شما باید پلاگینتون رو تغییر بدید! چون این روش شما که تاریخ رو به صورت شمسی در دیتابیس ذخیره می کنید، زیاد جالب نیست. شما باید تاریخ رو به صورت میلادی ذخیره کنید و فقط هنگام نمایش، هر بار توسط تابع، تاریخ میلادی رو به شمسی تبدیل و به نمایش بذارید.

    • امتیاز 3
  3. آقا یه مشکلی که پیش اومده اینه که وقتی میخوام برای مطلبم عکس آپلود کنمف می نویسه :خطایی هنگام بارگذاری پرونده پیش آمده. دوباره تلاش کنید

    اما عکس آپلود شده و وقتی دوباره صفحه نوشتن مطلب رو لود میکنم می بینم آپلود شده

    اینو میشه رفعش کرد یا نه؟

    من روی لوکال خیلی با این ارور مواجه شدم، چند بار تلاش کردم که بفهمم مشکلش چیه، اما موفق نشدم. فقط وقتی دیتابیس رو کلاً پاک و مجدداً وردپرس رو نصب می کردم، مشکل حل میشد! که مسلماً این راه حل روی هاست واقعی قابل اجرا نیست!

    اما بعضی جاها گفته شده که ممکنه مشکل از سطح دسترسی پوشه uploads باشه.

    hamyarwp.com/wordpress/image-upload-issue-in-wordpress/

  4. در پست اول گفته شده که اگر مشکلی مشاهده شد، در یک تاپیک جداگانه مطرح بشه. اما موردی که من میخوام بگم، در حد اشکال نیست.

    A ) یه Notice کوچیک است که اگه حالت Debug در وردپرس فعال باشه، مشاهده میشه. که بهتره برطرف بشه.

    Notice: Undefined index: conv_page_title in XXXXXXX\wp-content\plugins\wp-parsidate\includes\fixes-misc.php on line 13

    B ) پیشنهاد میشه در فایل readme.txt پلاگین، حتماً قید بشه که فایل زبان باید جداگانه دانلود بشه (حتی اگه بتونید لینک صفحه دانلود فایل زبان وردپرس رو هم داخل فایل readme قرار بدید دیگه بهتره). چون در این حالت خیلی از کاربران تازه کار، فکر می کنند که افزونه به درستی کار نمی کنه! و در نتیجه ممکنه این بهترین افزونه فارسی ساز رو نصب نکنند!

    الآن در فایل توضیحات این موارد درج شده:

    == Installation ==

    1. Upload plugin folder to the `/wp-content/plugins/` directory
    2. Activate the plugin through the 'Plugins' menu in WordPress
    3. To use the widget, go to 'Widgets' and choose 'بایگانی تاریخ خورشیدی'
    4. To use the widget, go to 'Widgets' and choose 'گاه‌شمار تاریخ خورشیدی'

    • امتیاز 1
  5. در php 5.4 بیشتر قابلیت های جدید (کدنویسی) اضافه شده و چند باگ رفع شده. اگر هاست اشتراکی دارید، این کار بهتره توسط مدیر سرور انجام بشه. اگه هاست اختصاصی دارید، میتونید ابتدا از اطلاعاتتون بکآپ تهیه کرده و سپس آپدیت رو انجام بدید.

    تغییرات php5.4:

    http://php.net/manual/en/migration54.new-features.php

    • امتیاز 1
  6. تابع mail فشاری به سرور وارد نمی کنه. من قبلاً حتی اتچ های سنگین هم با این تابع ارسال کردم.

    فرم ارسال ایمل رو باید خدتان طراحی کنید.


    $to = 'test@example.com';

    $subject = 'test....';

    $headers = "From: " . strip_tags($_POST['req-email']) . "\r\n";
    $headers .= "Reply-To: ". strip_tags($_POST['req-email']) . "\r\n";
    $headers .= "CC: susan@example.com\r\n";
    $headers .= "MIME-Version: 1.0\r\n";

    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";


    $message = '';
    $message .= '
    [b]Hello, World![/b]
    ';
    $message .= '';


    mail($to, $subject, $message, $headers);

    • امتیاز 1
  7. سلام

    این مشکل برای خود افزونه سئو وردپرس هم بود که با یک هوک و تغییر ساده اون رو برطرف کردیم.

    باید افزونه فوق رو بررسی کنیم.

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

    ممنون بابت اطلاع رسانی تون

    ضمن تشکر از پاسخ شما.

    تیم توسعه دهنده شما با استفاده از خط زیر مشکل افزونه سئو وردپرس رو حل کرده درسته؟

    if(!detect_rss())

    که در واقع میاد افزونه wp-parsidate رو در خروجی فید (xsl,xml,gz) بی اثر می کنه.

    ولی در مورد این افزونه قضیه فرق می کنه. اینجا دیگه خروجی وجود نداره، بلکه افزونه میاد تاریخ انتشار پست رو از دیتابیش استخراج می کنه و همون موقع به فرمت استاندارد "سایت مپ ویدیو" تبدیلش می کنه و دوباره در دیتابیس ذخیره اش می کنه و مشکل اینجاست که تاریخ شمسی در دیتابیس ذخیره می کنه و باید کاری کرد که تاریخ میلادی رو در دیتابیس ذخیره کنه. چون اگه تاریخ میلادی رو ذخیره کنه، هنگام نمایش XML مشکلی بوجود نمیاد. (چون توسط if(!detect_rss()) بی اثر میشه)

    من نهایت کاری که تونستم به صورت موقت انجام بدم، افزودن کدهای زیر به function detect_rss بود که باعث میشد افزونه سئوی ویدیو به درستی (به صورت میلادی) تاریخ رو در دیتابیس ذخیره کنه. البته نتونستم کد معادل استاندارد دستورات وردپرس رو پیدا کنم.

    if (is_admin() AND isset($_POST['action']) AND $_POST['action']=='editpost') {return true;}
    if (is_admin() AND isset($_POST['data']['wp_autosave']) ) { return true;}
    if (isset($_POST['reindex']) AND $_POST['reindex']=='Re-Index Videos') {return true;}

    تا آخر هفته جزئیات رو برای دو عزیز Morteza و Ehsaan پ.خ می کنم.

    باتشکر.

    • امتیاز 2
  8. موضوع: تداخل در افزونه سئوی ویدیو و WP-Parsidate

    *** قبل از خواندن پست: به دلیل طولانی شدن توضیحات عذرخواهی می کنم. مشکل ساده ایست ولی توضیحات طولانی ارائه شده! ***

    با سلام.

    ابتدا از تیم وردپرس پارسی برای نوشتن افزونه بسیار کاربردی و محبوب WP-Parsidate تشکر می کنم. این افزونه به بهترین شکل ممکن وردپرس رو پارسی می کنه.

    اما من در هنگام استفاده همزمان از افزونه های WP-Parsidate و "سئوی ویدیو یوآست" (که غیررایگان است) در قسمت نمایش "سایت مپ ویدیو" با مشکل مواجه شدم.

    یعنی در هنگام نمایش "سایت مپ ویدیو (video-sitemap.xml)" قسمت تاریخ انتشار ویدیو به صورت هجری شمسی و با فرمت نامناسب نمایش داده می شود. که برای بوجود نیومدن این مشکل باید در هنگام افزودن ویدیو به پست و قبل از انتشار پست، افزونه WP-Parsidate رو موقتاً غیرفعال کرد و بعد از انتشار پست افزونه رو فعال کنیم.

    تا جایی که من بررسی کردم به این نتایج رسیدم:

    وقتی یه ویدیو به پست اضافه مشه، افزونه "سئوی ویدیو یوآست"، میاد

    1- تاریخ انتشار پست رو از دیتابیس استخراج می کنه،

    2- توسط تابع mysql2date به فرمت استاندارد سایت مپ ویدیو تبدیلش می کنه و

    3- در دیتابیس ذخیره اش می کنه.

    4- در هنگام نمایش سایت مپ، اطلاعات رو از دیتابیس می خونه و نمایشش میده.

    به نظر من در مرحله دوم (یعنی تابع mysql2date) اشکال ایجاد میشه.

    تکه کد افزونه "سئوی ویدیو یوآست" که محل ایجاد مشکل است، به صورت زیر است:

    $vid['publication_date'] = mysql2date( 'Y-m-d\TH:i:s+00:00', $post->post_date_gmt );

    درحقیقت باید کاری کرد که افزونه WP-Parsidate بر روی تابع mysql2date در افزونه "سئوی ویدیوی یوآست" بی اثر باشه!

    که من برای تست اومدم در افزونه WP-Parsidate فایل functions.php در مسیر wp-parsidate\lib تغییر ساده زیر رو اعمال کردم!


    کد اصلی:
    function detect_rss()
    {
    if(is_feed()


    کد تغییر یافته:
    function detect_rss()
    {
    if(is_feed() OR is_admin())

    که این تغییر باعث میشه تابع WP-Parsidate در محیط ادمین اعمال نشه و دیدم که افزونه "سئوی ویدیو یوآست" به درستی تاریخ رو در دیتابیس ذخیره کرد.

    خلاصه کلام - مختصرِ تمام توضیحات بالا اینه:

    1- در پوشه روت وردپرس فایلی با نام test.php و با محتوای زیر می سازیم:

    <?php
    require_once('wp-config.php');
    mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
    $new_date = mysql2date( 'Y-m-d\TH:i:s+00:00', '2014-10-21 23:22:22' );
    echo $new_date;
    ?>

    2- درحالیکه افزونه WP-Parsidate فعال است، فایل test.php رو فراخوانی می کنیم. نتیجه به شکل زیر ظاهر می شود. (که فرمت نامطلوب است)

    1393-07-29\23:22:22+00:00

    3- حال از بخش مدیریت وردپرس افزونه WP-Parsidate رو غیرفعال کرده و مجدداً فایل test.php رو فراخوانی می کنیم. نتیجه به شکل زیر ظاهر می شود. (که فرمت مطلوب است)

    2014-10-21T23:22:22+00:00

    چه کار کنیم که درحالت فعال بودن افزونه WP-Parsidate با فراخوانی فایل test.php نتیجه به شکل زیر ظاهر شود؟

    2014-10-21T23:22:22+00:00

    باتشکر.

    • امتیاز 2
×
×
  • اضافه کردن...