نحوه حذف revision های زاید از دیتابیس

۱۶ دیدگاه
phpmyadmin

وردپرس دارای ویژه گی های بسیار خوبی است که یکی از آنها پیش نویس یا revision است.این قابلیت که از وردپرس ۲.۶ اضافه شد،با اینکه قابلیت مهمی است در عین حال می تواند دردسر ساز هم باشد.یکی از مهمترین مشکلات آن بالا بردن حجم دیتابیس است،زیرا مادامی که شما در حال نوشتن پست در وردپرس هستید،وردپرس مدام در حال ذخیره کردن مطلب شماست تا از بین نروند و همین باعث می شود بعد از مدتی دیتابیس شما پر از revision ها بی مصرف شود.

کاری که باید انجام دهیم این است که آنها را از دیتابیس پاک کنیم.برای این کار می توانیم با اجرای یک خط query خیال مان را راحت کنیم.پس ابتدا به phpmyadmin هاست خود رفته(دسترسی مستقیم به phpmyadmin) و پرس و جوی زیر را اجرا کنید:

DELETE FROM wp_posts WHERE post_type = "revision";

حالا همه آنها پاک شدند.

نکته مهم : قبل از این کار حتما از کل پایگاه داده یا جدول wp_posts پشتیبان تهیه کنید.

در همین رابطه :   وقتي رمز وردپرس را روي localhost فراموش كردم!
دسته بندی : هک های وردپرس

16 نظر

  1. سلام

    امین عزیز

    اسندکس‌سازی Spiderها در ورودی‌های داینامیک از صفحات شروع نمیشه، فراموش نکنید که چیزی به نام صفحه اول در سایت شما وجود ندارد.

    هر صفحه‌ای بنا به فراخور درخواست و تنظیمات کاربر و همچنین تنظیمات نمایشی شما که برای قالب قرار داده‌اید ایجاد می‌شود.

    و اما رسول عزیزم

    چرا، سنگ رو سنگ بند میشه.

    در مورد پست‌های و یا برگه‌های رمزگذاری شده هم توضیح دادم

    علی‌جان

    سؤال کوچکی می‌تواند این موضوع را خیلی ساده توضیح دهد.

    اگر قرار باشد Spiderها به قول امین عزیزم از لینک‌های صفحه اول و یا به قول رسول عزیز "موتورهای جستجو فقط به قسمتهایی دسترسی دارند و بررسی میکنند که در دسترس همه هست" پس چه لزومی یا بهتر بگویم چه فایده‌ای دارد که شما برای هر پست یا برگه‌ای امکان ایجاد تعاریف غیر قابل نمایش برای عموم داشته باشید !!!!؟؟؟؟

    دانسته‌های حقیر در یادآوری این نکته که همه چیز را نمی‌دانم دائماً تاکید دارد و همین باعث می‌شود از واژه غیر ممکن و مردود استفاده نکنم.

    ضمناً؛ موضوع مطروحه شما در این پست جالب بود، فضولی بنده هم برای تکمیل ارزش آن بود که این مطلقاً از ارزش کار شما کم نمی‌کند.

    1. سلام اکبر عزیز

      دوست من ما که جنگ نمی کنیم،صحبت های هیچ کدوم مون هم وحی منزل نیست.هدف فقط یادگرفتن چیزهای جدیدی است که ممکنه بلد نباشیم.

      راستش هر چی به منطق موضوع فکر می کنم،درست به نظر نمی رسه.شما می فرمایید مثلا ربات گوگل به revision های ما دسترسی دارد.چه تضمینی هست که یه هکر از این راه،خودش رو به عنوان رباط جا نزنه و وارد بخش های خصوصی بشه.
      در مورد تعاریف غیرقابل نمایش اگر منظورتون این کارهای سئو است مثل افزودن keyword و description اونها نمایش داده نمی شن،ولی می دونید که موتورهای جستجو کاری با نمایش ندارند و فقط سورس صفحه رو پردازش می کنند.
      به هر حال دسترسی ربات ها به revision کمی غیرقابل باوره !

      در ضمن اگر از به نظر مربوطه پاسخ بدید،اون کاربر هم از نظر شما مطلع شده و می تونه بیاد و جواب بده

      ممنونم

      1. حرف شما کاملا درسته علی آقا

        موتور جستجو سورس صفحه رو که در دسترس همگان هم قرار داره پردازش و بررسی میکنه

        ولی مرورگر همین سورس ها رو برای کاربر به حالت گرافیکی نمایش میده.

    2. دوست عزیزم،

      جواب سوال بنده رو در مورد اینکه "چه دلیلی داره تا رباتها به revisionها دسترسی داشته باشند؟ " رو ندادید.

      شما الان سوال و بحثتون رو از revisionها به پستهای private و رمز دار تغییر دادید.

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

      به عنوان مثال فایل wp-includes/post.php خط ۳۸۷۰ را ملاحظه کنید :

      if (current_user_can($cap)) {

      // Does the user have the capability to view private posts? Guess so.

      $sql .= " OR post_status = 'private'";

      همچنین توضیحات توسعه دهندگان ورد پرس :

      Publish box

      Visibility – This determines how your post appears to the world. Public posts will be visible by all website visitors once published. Password Protected posts are published to all, but visitors must know the password to view the post content. Private posts are visible only to you (and to other editors or admins within your site)

      لینک : https://codex.wordpress.org/Writing_Posts

    3. باز هم سلام

      خیلی جالبه که ما الان داریم سر یه چیز بدیهی و تابلو بحث میکنیم.

      =====

      اکبر آقای عزیز هیچ شخصی نیست که همه چیز رو بدونه و بالطبع منم همچین ادعائی ندارم

      ====

      برای اثبات این موضوع اصلا به مستندات وردپرس کاری نمیگیریم

      یه چیزه خیی ساده و واضح

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

      اگر ما بیایم یه نوشته رو داخل مدیریت بنویسیم و برچسب ها و کی وردها و دیسکریپشن و همه اینها رو هم تکمیل کنیم و فقط منتشر نکنیم و پیش نویس ذخیره کنیم،طبق فرمایش شما موتور جستجو باید بتونه ایندکس کنه مطالبش رو درسته؟

      این رو بی زحمت امتحان کن و خبرشم بهم بده لطفا

      ==========

      ثانیا هیچ کدوممون قصد و غرضی نداریم،فقط اومدیم دور هم یه چیزی یاد بگیریم،همین

      در ضمن بابت افزونه ای هم که معرفی کردی ممنون

      اون رو برای کسی معرفی کردم ،خیلی لذت برد و دعات کرد و همینطور نویسندش رو.

  2. سلام

    خیلی خوبه که در این موارد بحث میکنید ،همین باعث میشه هرچند ناچیز ولی حداقل یه چیزی یاد بگیره.

    در مورد موتورهای جستجو هم ،موتورهای جستجو فقط به قسمتهایی دسترسی دارند و بررسی میکنند که در دسترس همه هست ،حتی اگر برای یک پست رمز بگذارید موتور جستجو نمیتونه ایندکسش کنه.

    پس این نظر که موتورهای جستجو میتونند به محتوای دیتابیس دسترسی داشته باشند کاملا مردوده، و اگه بتونند به همین راحتی دسترسی داشته باشند که سنگ روی سنگ بند نمیشه،چون همه اطلاعات ما درون دیتابیسه

    ===========

    فقط تنها چیزی که میشه در زمینه ارتباط سئو و revision i ها گفت اینه که در هنگام لود شدن سایت در صورتی که از کش سمت سرور استفاده نکرده باشیم،ممکنه زمانی که برای پرس و جویی که برای پستها صرف میشه یه خورده در حد میلی ثانیه بیشتر بشه همین

    موفق و پیروز باشید

  3. سلام

    ممنون از دقتی که در این مورد به خرج دادی.

    با اینکه این موضوع در SEO نیز خیلی تاثیر داره ولی متاسفانه خیلی از دوستان به اون توجهی ندارند.

    برای دوستانی که اطلاعات فنی زیادی ندارند و یا دست زدن به دیتابیس براشون ترسناکه هم یه افزونه معرفی می‌کنم که این کار را با دوتا کلیک ساده انجام میده.

    افزونه Delete-Revision ضمن اینکه تمامی Revisionهای موجود را لیست و امکان حذف آنها رو به شما میده، این قابلیت رو هم داره که بعد از انجام این کار دیتابیس رو optimize کنه.

    این افزونه رو از آدرس پایین می‌تونید نصب کنید
    http://wordpress.org/extend/plugins/delete-revisi

    1. سلام دوست عزیز

      ممنون از اینکه این افزونه رو معرفی کردی ولی اصل کاری که می کنه همین یک خط پر و جوئه.در ضمن میشه در مورد seo و این revision ها کمی توضیح بدید،راستش متوجه رابطه اینها نشدم.

      موفقیت

      1. علی جان دقیقاً درسته

        بخش اول کار این افزونه که کارش حذف revisionهاست رو با همون خط فرمان میشه انجام داد.

        من هم عرض کردم این افزونه به درد کابرایی می‌خوره که در دسته زیر قرار دارند:

        ((برای دوستانی که اطلاعات فنی زیادی ندارند و یا دست زدن به دیتابیس براشون ترسناکه))

        در مورد SEO و revision هم خیلی ساده است.

        وقتی تغییرات شما زیاد میشه و یا به عبارتی تعداد پست‌هایی که revision متعدد دارند، هنگام بازبینی توسط Search Engine ها با نسخه‌های revision شده خودشون مقایسه میشن و همین امر باعث ایجاد وقفه برای کارشون میشه.

        روبوت‌های مربوطه طوری برنامه‌ریزی شدن که وقتی Date & Time پست تغییر داشته باشه اون رو بازنگری کنن و طبیعتاً وقتی revision نداشته باشند این کار سریعتر انجام میشه.

        باز هم ربوت‌ها کاری که انجام میدن اینه که مدت زمانی که به تناسب یافتن مطالب جدید در یک URL صرف می‌کنند رو برای طبقه‌بندی سرعت کارشون ذخیره می‌کنند و طبیعتاً وقتی شما در رده زمانی بالاتری قرار داشته باشید رجوع سریعتر (بیشتری) به شما خواهند داشت.

        امیدوارم سؤال شما رو درست متوجه شده باشم و جوابت رو گرفته باشی.

        1. سلام

          مگه revision ها برای کاربران و موتورهای جستجو قابل مشاهده هستند؟آخه تا جایی که می دونم،فقط نویسندگان و مدیران سایت قادر به دیدن اینها هستند نه همه

          1. بله، spiderهای موتورهای جستجو به محتواتش دسترسی دارند.

            شما خودتون توی بخش "تنظیمات حریم خصوصی" این امکان رو بهشون میدی 🙂

            "می‌خواهم سایتم برای همه در دسترس باشد٬ ازجمله موتورهای جست‌وجو (مانند گوگل٬ تکنوراتی٬ بینگ) و بایگانی‌کنندگان"

            با با انتخاب این گزینه به Spiderها امکان دسترسی به تمامی محتواهای ((غیر رمزگذاری شده)) رو میدید.

            حتی revisionها (چه در پست‌ها و چه در برگه‌ها)

            البته این در مورد کامنت‌های تائید نشده صدق نمی‌کنه

          2. سلام
            البته دوستان دیگر هم فرمودند که ممکن نیست revision ها برای موتورهای جستجو قابل دیدن باشه.من هم فکر می کنم همینطور هست چون revision ها محرمانه هستند.ولی اگر شما هم دلیلی دارید با کمال میل گوش می دهیم تا یاد بگیریم

            موفقیت

          3. خیلی می‌بخشید، موتورهای جستجو از کدام لینک و یا صفحه به revisionها دسترسی دارند؟

            موتور جستجوی گوگل با user agent گوگل بات وارد صفحه ایندکس میشه و همون سورسی رو میبینه که ما با user agent به عنوان مثال فایر فاکس.

            مگر اینکه در فایل general template خود وردپرس که قالب کلی رو تعیین میکنه، دستوری باشه که با بررسی user agent مطالب متفاوتی رو برای هر کدام نشان دهد، که من چنین موردی تا حالا ندیدم.

            اصلا چه دلیلی وجود داره تا revisionها در دسترس موتورهای جستجو باشه؟

            اون موردی هم که می‌فرمایید:

            "شما خودتون توی بخش “تنظیمات حریم خصوصی” این امکان رو بهشون میدی 🙂

            “می‌خواهم سایتم برای همه در دسترس باشد٬ ازجمله موتورهای جست‌وجو (مانند گوگل٬ تکنوراتی٬ بینگ) و بایگانی‌کنندگان”"

            فکر میکنم (شاید هم اشتباه کنم) برای جلوگیری از ایندکس شدن مطالب توسط روباتهای موتورهای جستجو کننده از طریق فایل robots.txt هست.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *