همه می دانند که من نمی توانم بدون جوملا زندگی کنم، اما به نظر من، انجمن خوبدر قطعات، خیر. به همین دلیل من با موتورهای انجمن کار می کنم. یکی از موارد جدیدی که اخیراً شروع به استفاده از آن کردم، شروع یک دسته بندی جدید SMF است، امیدوارم با آن مواد مفید. ما شروع کوچک، خوب، به عنوان مبتدی بسیار مفید است.

اولین قدم ها در بهینه سازی موتور جستجوانجمن ماشین های ساده: حق چاپ و لینک های خارجی را حذف کنید

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

و بنابراین، خوانندگان معمولی می دانند که من چقدر دوست ندارم "10" پیوند خارجی را به سایت های رسمی موتورها، از جمله انجمن های انجمن، قرار دهم. به همین دلیل است که اول از همه، ما حق چاپ را حذف می کنیم و به 4، توجه 4 پیوند خارجی فرم " SMF 2.0.2 | ماشین های ساده | SMF © 2011 | XHTMLبرای انجام این کار، از طریق FTP forum/Themes/ به سایت متصل شوید نام تم شما/ و فایل را ویرایش کنید index.template.php. به طور طبیعی، در پایین کد (در مورد خط 330) وجود دارد که پیوندهای خارجی را نشان می دهد که ما چندان دوست نداریم. بنابراین، ما حذف می کنیم: "

  • "، theme_copyright()،"
  • "و"
  • "، $txt["xhtml"]، "
  • ". همه چیز بسیار ساده و آسان است. در انتشارات بعدی منتظر مطالب جدید در مورد ترویج و بهینه سازی انجمن ها در SMF باشید /

    سازماندهی شده توسط Botmaster Labs، برنامه ریزی نشده است. زمان زیادی وجود ندارد، ویدیو به عنوان یک روند جدید برای مسابقه مورد نیاز است، اگرچه توضیح همه چیز با اسکرین شات های خوب آسان تر است (IMHO من) و من واقعاً نمی خواهم چیزی فیلمبرداری کنم. تاپیک های سودآور بسیار کمی باقی مانده است، هرزنامه های گنگ دیگر اصلاً حکم نمی کند، اینجا باید فکر کنید و هیچ کس موضوع را شلیک نمی کند، اگر فقط منسوخ ها سعی کنند آن را در یک بسته بندی زیبا و کمی پودر کنند. :) اما این مربوط به ما نیست. به طور کلی، این 3 "نه"، من فکر می کنم، اساساً برای اکثر شرکت کنندگان بالقوه موانعی برای شرکت در مسابقه شدند. مانند تعمیر یک ماشین از سه: ارزان، با کیفیت، سریع - در سرویس آنها فقط می توانند 2 شرط را به طور همزمان انجام دهند. بنشین و آنچه را که به تو نزدیکتر است انتخاب کن :) مسابقه هم همینطوره: وقت دارم میتونم ویدیو بزارم اما موضوعی نیست یا میتونم ویدیو بسازم موضوع دارم ولی اصلا وقت ندارم یا هست وقت آزاد و یک موضوع کوچک وجود دارد، اما ویدیو ترسناک است. اما اگر 2 شرط همزمان رعایت شود خوب است. خوب، بیایید شعر را رها کنیم. به خودم ادامه خواهم داد. من قصد نداشتم، بنابراین در مسابقه شرکت خواهم کرد، حتی انتخاب کردم که به کدام مقاله رای بدهم. آنچه را که دوست دارید بگویید، اما Doz نرم افزار را به خوبی می شناسد و می داند که چگونه از آن بسیار معقول استفاده کند. اما امروز فهمیدم که دسیسه در مسابقه ظاهر شد. معلوم می شود که من نمی توانم رای بدهم، اما فقط مبتدیانی که نرم افزار را در سال 2011 خریداری کرده اند و مسابقه برای آنها طراحی شده است می توانند این کار را انجام دهند. من کمی تعجب کردم، اما صاحب آن یک آقا است. این مسابقه یک کمپین تبلیغاتی است و الکساندر بهتر می داند که چگونه آن را انجام دهد. به طور کلی، پس از آن تصمیم گرفتم مقاله ای ارسال کنم، زمانی که مشخص است برای چه کسی در واقع انجام این کار برای کل مزرعه جمعی غیرممکن است، نوشتن تا حدودی آسان تر است.
    مقدمه طولانی به پایان رسید، اکنون به اصل مطلب می پردازیم.
    وقتی یک مبتدی چنین ابر دروگر را که مجتمع Xrumer + Hrefer است به دست آورده است، به چه چیزی نیاز دارد؟ درست است، یاد بگیرید که چگونه روی آن کار کنید و این توهم را دور بریزید که با شروع به ارسال هرزنامه می توانید درآمد کسب کنید. اگر اینطور فکر می کنید، فوراً پول خود را به امور خیریه اهدا کنید. شما باید یاد بگیرید که چگونه از ابزارهای مجموعه استفاده کنید، ترجیحاً آن را برای خود تیز کنید. زمان "بیشتر گرفتن - بیشتر پرتاب" به پایان رسیده است. کمیت جای خود را به کیفیت می دهد. بنابراین ما پایه را برای خودمان جمع آوری می کنیم، یاد نگیریم که چگونه این کار را انجام دهیم - شما پشت قطار خواهید افتاد. البته خفر در این امر به ما کمک خواهد کرد. اگر قصد دارید منابع خود را در Google تبلیغ کنید، باید از طریق Google نیز به دنبال سایت های اهدا کننده بگردیم. به نظر من این قابل درک و منطقی است. اما گوگل به عنوان معشوقه ی کوه مس، ثروت خود را به همه نمی بخشد. نیاز به رویکرد دارد. من می خواهم بلافاصله بگویم که امیدوار نباشید با توجه به علائمی که در مردم پیدا می کنید، بتوانید چیزی جمع آوری کنید. به همین دلیل است که آنها در معرض دید عموم قرار می گیرند زیرا ارزشی ندارند. من موضوع را بیشتر توسعه نمی دهم. بهتر است به شما بگویم که چگونه آن را به درستی مونتاژ کنید تا نتیجه را ببینید ، بقیه موارد را خودتان نهایی کنید ، نکته اصلی درک اصل است. لازم است که با توجه به نشانه های موتورهای خاص مورد نیاز خود، و نه به طور کلی به نشانه های انجمن ها، بر اساس صحیح جمع آوری کنیم. آی تی اشتباه اصلیمبتدیان - روی یک مورد خاص تمرکز نکنید، بلکه سعی کنید همه چیز را به طور کلی پوشش دهید. و با این حال، اگر می خواهید یک پایه کم و بیش عادی را تجزیه کنید، از استفاده از عملگرها در پرس و جوها خودداری کنید. بدون "inurl:"، "site:"، "عنوان" و غیره. گوگل فورا جستجوگرانی مانند شما را ممنوع خواهد کرد. بنابراین، موتورهایی را که با آن ها استفاده می کنند را به دقت مطالعه می کنیم این لحظه Hrumer کار می کند:

    ارائه شده توسط php-Fusion

    در نسخه 7.07 کرومر، این برنامه با چندین موتور جدید آموزش داده شده است:

    forumi.biz، forumb.biz، 1forum.biz، 7forum.biz، و غیره.

    phpBB-fr.com، موضوع سولاریس phpBB

    و روند یادگیری چیزهای جدید به طور مداوم ادامه دارد.
    به طور کلی باید کوئری های صحیح را برای تجزیه توسط Khrefer آماده کنیم. بیایید انجمن dizhok را به عنوان مثال در نظر بگیریم. انجمن های SMF. و ما شروع به جدا کردن آن به قطعات برای تجزیه می کنیم. گوگل محبوب ما در این امر به ما کمک خواهد کرد. وارد کردن یک پرس و جو گوگل انجمن های SMF- تعداد زیادی زباله در این شماره وجود دارد، به صفحه سیزدهم برگردید و هر پیوندی را انتخاب کنید. من با این یکی برخورد کردم: http://www.volcanohost.com/forum/index.php?topic=11.0. بیایید آن را باز کنیم و کاوش کنیم. ما باید ویژگی خاصی را در صفحه پیدا کنیم که بتوان آن را برای جستجوی صفحات دیگر در این موتور اعمال کرد. در پاورقی متوجه کتیبه زیر می شویم پشتیبانی شده توسط SMF 1.1.14، آن را نقل می کنیم و وارد گوگل می کنیم، به ما نشان می دهد که برای این درخواست حدود 59 میلیون گزینه می شناسد. پیوندها را مرور می کنیم، چند گزینه دیگر به این کلمه کلیدی اضافه می کنیم، به عنوان مثال، صنوبر "طراحی شده توسط SMF 1.1.14".یا ارائه شده توسط SMF 1.1.14 viagra. ما متقاعد شده ایم که این درخواست شیک است، فقط در صدور انجمن ها و تقریباً هیچ زباله ای برای شما وجود ندارد.

    علاوه بر این، همانطور که در بالا گفتم ما به کمیت علاقه نداریم، بلکه به کیفیت علاقه داریم. حرکت کن. از همان انجمن عبارت دیگری را از فوتر می گیریم: ، همچنین آن را نقل قول کنید و به گوگل بدهید. در پاسخ، او فاش می کند که بیش از 13 میلیون نتیجه را می داند. مجدداً خروجی را مرور می کنیم، کلمات اضافی اضافه می کنیم و خروجی را با آنها بررسی می کنیم. ما مطمئن می شویم که درخواست عالی است و همچنین تقریباً هیچ زباله ای وجود ندارد. به طور کلی، در حال حاضر 2 درخواست آهن وجود دارد. پیشنهاد می کنم فعلاً انجمن اول را به حال خود رها کنید و به جمع آوری درخواست ها از سایر انجمن ها ادامه دهید. خوشبختانه گوگل در صورت درخواست باز است 2006-2008 Simple Machines LLC. ما از این موضوع، به عنوان مثال، این انجمن ها را می گیریم: http://www.snowlinks.ru/forum/index.php?topic=1062.0 و http://litputnik.ru/forum/index.php?action=printpage; topic=380.0 در فوترها درخواست های زیر را از آنها دریافت می کنیم: "پاورده شده توسط SMF 1.1.7" و "پاورده شده توسط SMF 1.1.10" (من همیشه به شما توصیه می کنم درخواست های Khrefer را به صورت نقل قول هدایت کنید، زیرا ابتدا به کیفیت نیاز داریم. همه). من فکر می کنم واضح است که ما چه می کنیم، در پایان ما یک پایگاه داده مشخص از پرس و جوها برای جستجوی انجمن ها در موتور SMF خواهیم داشت (به عنوان مثال انتخاب شد، با بقیه موتورها مشابه است).
    چیزی شبیه به این خواهد بود:

    پشتیبانی شده توسط SMF 1.1.2

    پشتیبانی شده توسط SMF 1.1.3

    پشتیبانی شده توسط SMF 1.1 RC2

    پشتیبانی شده توسط SMF 1.1.4

    پشتیبانی شده توسط SMF 1.1.8

    پشتیبانی شده توسط SMF 1.1.7

    "2006-2008، Simple Machines LLC"

    و این تمام نیست. هنگام جمع‌آوری نسخه‌های موتورها، برآمدگی "2001-2006، Lewis Media" را در پاورقی برخی از انجمن‌های SMF می‌یابیم. ما این درخواست را بررسی می کنیم، همچنین ما را به طور کامل برآورده می کند. ما یک پرس و جو مشابه پیدا می کنیم: "2001-2005, Lewis Media". با اجرای فوترها، درخواست زیر را می‌یابیم: «طراحی SMFone توسط A.M.A، پورت‌شده به SMF 1.1». آن را بررسی کنید - عالی است. و غیره. نیم ساعت کار و شما یک پایگاه داده فوق العاده از پرس و جوها در موتور دارید و برای این پرس و جوها گوگل خیلی کمتر از زمانی که از اپراتورها در آنها استفاده کنید ممنوع می کند. و در عین حال، پایگاه داده شما بسیار تمیزتر از استفاده از پرس و جوهایی مانند "index.php?topic=" خواهد بود، زیرا در اینجا گوگل نه تنها انجمن های مورد نیاز ما را ارائه می دهد، بلکه منابع زیادی را نیز در جایی که امکان پذیر است ارائه می دهد. یک لینک به موضوع انجمن بگذارید شما می توانید بحث کنید، آنها می گویند، چه اشکالی دارد؟ دیگران یک لینک گذاشتند، بنابراین ما می توانیم. ولی! پیوندها نه تنها توسط Hrumer، بلکه توسط سایر برنامه ها نیز قابل ترک است. علاوه بر این، آنها را می توان به طور ویژه برای گذاشتن نظرات در یک منبع خاص، به اصطلاح نرم افزار بسیار تخصصی، تیز کرد، به علاوه چنین پیوندهایی را می توان با دست گذاشت. باز هم تکرار می کنم برای ما کمیت آشغال مهم نیست، کیفیت آن مهم است، به هر حال با درخواست های درست پایه را جمع آوری می کنیم. یک مثبت این روشهمچنین در این واقعیت که عملاً نیازی به پیکربندی نخواهید داشت صافی صافی ، می توان آن را به سادگی خاموش کرد، زیرا گوگل عملاً به شما زباله نمی دهد.


    من فکر می‌کنم یادگیری نحوه استفاده صحیح از Chrefer در مرحله اولیه بسیار مهم است، زیرا با آموختن این موضوع، بدون توجه به تغییر وضعیت، همیشه می‌توانید از Chrumer استفاده کنید. دفاع ها پیچیده تر می شوند و اگر در برخی از انواع موتورها محافظت را تقویت کرده اند و نمی توانند با آن کنار بیایند. این لحظههرومر، منطقی نیست که منابع را برای جمع آوری این پیوندها صرف کنیم، و سپس روی آنها به عنوان Hrumer کار کنیم، بهتر است روی آنچه نتیجه می دهد تمرکز کنیم. و در عین حال، اگر تیم Botmaster Labs چیز جدیدی به Chrumer آموزش داده باشد، می توانید به سرعت یک بیمار جدید را تشریح کرده و پایه کرومر را در حالی که بیمار هنوز گرم است آماده کنید. زمان پول است، ممکن است زمانی که پایه را خریداری می کنید، منبع دیگر مرتبط نباشد. توسط کسی جمع آوری شده است علاوه بر این، مجموعه صحیح پایه ها برای خودتان استفاده "سفید" از Khrumer را بسیار گسترش می دهد. و این دقیقا همان جایی است که همه چیز در حال حرکت است، چه بخواهیم و چه نخواهیم، ​​اما روند سفید شدن یا خاکستری شدن در جریان است. ملحفه های سیاه برای هر چیزی که می توانید به گذشته بروید.
    تمام جنبه های فنی دیگر کار با Hrefer را می توان در کمک مشاهده کرد و منطقی نیست که روی آنها تمرکز کنیم، همه اهداف-نقاط-ثانیه ها به صورت تجربی برای هر خودرو به صورت جداگانه تنظیم می شوند.
    به عنوان یک امتیاز، من در اینجا یک الگو برای تجزیه موتور جستجوی چینی بایدو پست می‌کنم، روز پیش از من در مورد آن سؤال شد، بنابراین در بین زمان‌ها این کار را انجام دادم، با عرض پوزش برای جناس. :)


    نام میزبان=http://www.baidu.com
    Query=s?wd=
    LinksMask=
    مجموع صفحات=100
    صفحه بعدی=

    NextPage2=

    CaptchaURL=
    CaptchaImage=
    CaptchaField=


    سعی کردم تجزیه آنها را تست کنم، ممنوعیتی وجود نداشت، خریفر سریع منابع را جمع آوری کرد، همه درخواست های تجزیه شبیه به گوگل بود، اما منابع چینی زیاد بود و با روابط عمومی بالا و علاوه بر آن جاهای زیادی وجود داشت. جایی که اروپایی ها پا نگذاشته بودند. بهتر است با درخواست های چینی تجزیه شود. Google Translate در این مورد کمک می کند، لیستی از کلمات کلیدی را به زبان روسی تایپ کرده و آن را به چینی ترجمه کنید. حقیقت در کلمات«کلمات کرفر را نمی توان به زبان چینی کنار هم گذاشت، آنها باید دوباره رمزگذاری شوند.
    به جای چینی:

    伟哥 - ویاگرا

    吉他 - گیتار

    其他 - استراحت

    保险公司 - بیمه

    این کدها را در فایل Words قرار دهید تا جایگزین شوند:

    %E4%BC%9F%E5%93%A5

    %E5%90%89%E4%BB%96

    %E5%85%B6%E4%BB%96

    %E4%BF%9D%E9%99%A9%E5%85%AC%E5%8F%B8

    اگر سایتی را برای بیمه تبلیغ می کنید، پس با ارسال یک لینک در نمایه خود در یک موضوع (!) حتی یک انجمن چینی که در صورت درخواست یافت می شود " انجمن SMF" 保险公司بسیار خوب خواهد بود
    در خاتمه می خواهم بگویم که من هرگز افرادی را که از بد بودن یا تجزیه نکردن خرف ها شکایت می کردند درک نکردم ، همیشه می خواستم این را بگویم ، فقط شما نمی دانید چگونه آنها را بپزید. هیچ تجزیه کننده ای بهتر از ارجاع دهنده نیست، فقط باید درست باشد. Hrefer یک ماشین است: خوب، جامد، ساخته شده به زبان آلمانی، اما یک شخص آن را کنترل می کند و همه چیز به میزان هوشمندی آن بستگی دارد، شما نمی توانید ماشین را مجبور کنید همزمان به راست و چپ برود.
    یه تاپیک جدا تمیز کردن پایه هاست من یکبار 3 سال پیش برای مسابقه قبلی. از آنجا بیشتر ، همه چیز هنوز مرتبط است ، اما اکنون می توانید از بررسی 200 OK خودداری کنید ، من واقعاً این روند را دوست نداشتم ، خطاها بسیار زیاد بودند ، بسیاری از موارد اضافی فیلتر شدند. اکنون می توان این کار را تقریباً به طور خودکار در طول کار کرومر انجام داد، اگرچه این فرآیند یک آنالوگ کامل برای بررسی "200 OK" نیست. به طور کلی، نکته: چندی پیش، یک فرصت فوق العاده در Khrumer ظاهر شد - برای سرقت اطلاعات از منابع در زمان اجرای پروژه. به نظر می رسد این است. شما در قالبی رانندگی می کنید که در حین کار پردازش می شود و اطلاعات جمع آوری شده مطابق الگو در فایل xgrabbed.txt در پوشه Logs وارد می شود. شما می توانید از این عملکرد برای هر چیزی استفاده کنید، پرواز فانتزی بسیار زیاد است. من هفته ای یک بار از این تابع برای حذف پیوندها از پایگاه کاری "منقضی شده" استفاده می کنم. این راز نیست که انجمن ها هر روز به منظور پاکسازی پایگاه از چنین منابعی از بین می روند و ابزار "Autogabbing" در این مورد به ما کمک می کند.
    پس از همه، شما باید اعتراف کنید، اغلب با تایپ کردن، به عنوان مثال، http://www.laptopace.com/index.php، می بینیم که این دامنه قبلا، به عنوان مثال، goudyadya است، اما هیچ انجمنی در آنجا وجود ندارد. پس برای اینکه این سرباره را از پایه بیرون بیاندازیم دستبرد میزنیم. :) ما کد منبع صفحه را باز می کنیم و این ورودی را در آنجا می بینیم:

    laptopace.com
    برای گرفتن، آن را به
    [...]

    اکنون همه "مردگان" گودادی به نام برای ما شناخته می شوند.
    اگر می‌خواهید پایگاه داده را از دامنه‌های مختلف «منقضی شده» پاک کنید، در اینجا یک انتخاب کوچک برای ابزار "Autograbbing" وجود دارد:


    [...]

    [...]
    [...]
    [...]

    [...]
    این دامنه ممکن است برای فروش باشد. [...]این دامنه را بخرید

    [...]<body bgcolor="#ffffff" text="#000000"> </span><br>لیست تا کامل شدن فاصله زیادی دارد، اما فکر می‌کنم این کمک خواهد کرد که پایگاه‌های زباله چند میلیون دلاری را بارها هدایت نکنیم. ایجاد یک الگو، باز کردن پیوند منقضی شده و ساختن یک ماسک الگو کار سختی نیست. <br>با استفاده از همان خودکار گرفتن، می‌توانید پایگاه‌های داده موجود خود را نیز مرور کنید و آنها را بر اساس منابع مرتب کنید و آنها را به موتورها تقسیم کنید. مرتب‌سازی پایگاه‌های داده بر اساس موتورها به شما این امکان را می‌دهد که بهترین استفاده را از تمام ویژگی‌ها و تنظیمات Hrumer، به ویژه فرآیند یادگیری. و علاوه بر این، با کمک Autograbbing، اگر ترجیح می دهید زباله ها را نه توسط Hrefer، بلکه با دانلود از سرویس های میزبانی فایل های مختلف جمع آوری کنید، می توانید زباله ها را از پایگاه های داده حذف کنید. برای انجام این کار، باید یا یک ماسک برای انتخاب تالار گفتمان بسازید و سپس فقط مواردی را که توسط ماسک گرفته شده است را از پایگاه داده جمع آوری کنید، یا برعکس، ماسکی برای غیر انجمن ها بسازید و سپس مواردی که در حال گرفتن است را حذف کنید. گزینه اول منطقی تر و قابل اطمینان تر است، زیرا ما دقیقا می دانیم که به دنبال چه چیزی باشیم. <br>موفق باشید در کار <br>PySy. من یک ویدیو با فوکوس باریک ساختم (با آن عذاب کشیدم، اولین بار آن را انجام دادم :))، اگرچه Hrefer را از دستگاه خانگی خود راه اندازی کردم، سرعت خالص خیلی خوب نیست، اینجا فقط برای آزمایش کپی دارم، پس انجام دهید من را به خاطر سرعت کار سرزنش نکنید. :) <br><p><span class="BlWV-EuxoOk"></span></p> <h4>16 نظر:</h4> <p>نظرات جکا...</p><p>با چه برنامه ای کلمات کلیدی را انتخاب کردید؟</p>نظرات سرژ گلازکو... <p>اگر نیاز به جمع آوری منابع موضوعی داشته باشم، کلمات را در Words با قلم و از طریق Adwords انتخاب می کنم. اما در بسیاری از موضوعات کلمات قبلاً برای من انتخاب شده اند، در اینجا فقط می توانم برخی از کلمات را اضافه یا حذف کنم، اما به طور خودکار نه، اما همه آنها را بررسی می کنم.</p> <p>بیایید بلافاصله با کد اسکریپت اصلی شروع کنیم:</p> <p>#!/usr/bin/perl</p><p>اسکریپت # which-forum.pl <br><span># (ج) 2010 الکساندر الکسیف، http://website/</p><p>سخت استفاده کنید؛</p><p># خط نظر - برای سختگیری</span><br><span># اگر وظیفه جمع آوری آمار موتور است، آن را همانطور که هست رها کنید</span><br><span># اگر فهرستی از انجمن‌ها تهیه می‌کنید - نظر خود را لغو کنید</p><p>$داده من ; <br>$data .= $_ در حالی که (<> ) ; </p><p># بررسی کنید که چه تعداد توسط phpBB بدون پیوند پاورقی ارائه شده است</span><br>چاپ "phpbb <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/i</span>یا <br><span># $data =~ /viewforum\.php\?[^""]*f=\d+/i یا</span><br>$data =~ /phpBB\-SEO/i یا <br>$data =~ <span>/<link rel="copyright" href="(?:http:\/\/)?phpBB\.com"/i </span>) ; <br>چاپ "ipb <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i </span>یا <br>$data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision Power Board/i</span>یا <br>$data =~ <span>/<div id=[""]{0,1}ipbwrapper[""]{0,1}>/من</span>یا <br>$data =~ <span>/index\.php\?[^""]*showforum=\d+/i</span>) ; <br>چاپ "vbulletin <span>\n"</span><br>اگر ($data =~ <span>/طراحی شده توسط:؟[^<]+vBulletin[^<]+(?:Version)?/i </span>یا <br>$data =~ <span>/<meta name="generator" content="vBulletin/i </span>یا <br>$data =~ <span>/forumdisplay\.php\؟[^""]*f=\d+/i</span>) ; <br>چاپ "smf <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>طراحی شده توسط SMF/i</span>یا <br>$data =~ <span>/index\.php\?[^""]*board=\d+\.0/i</span>) ; <br>چاپ "punbb <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/"[^>]*> PunBB/i</span>) ؛ #یا <br><span># $data =~ /viewforum\.php\?[^""]*id=\d+/i);</span><br>چاپ "fluxbb <span>\n"</span><br><span># if($data =~ /viewtopic\.php\?id=\d+/i یا</span><br>اگر ($data =~ <span>/<a[^>]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i</span>) ; <br>چاپ "exbb <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i</span>) ؛ # یا <br><span># $data =~ /forums\.php\?[^""]*forum=\d+/i);</span><br>چاپ "یاب <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/i</span>یا <br>$data =~ /YaBB\.pl\?[^""]*num=\d+/i ) ; <br>چاپ "dleforum <span>\n"</span><br>اگر ($data =~ <span>/\(طراحی شده توسط انجمن DLE\)<\/title>/من</span>یا <br>$data =~ <span>/<a[^>]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=copyright)[^"]*"> انجمن DLE<\/a>/من</span>) ; <br>چاپ "نماد <span>\n"</span><br>اگر ($data =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/i</span>یا <br>$data =~ <span>/<meta name="GENERATOR" content="Ikonboard/i </span>یا <br>$data =~ /ikonboard\.cgi/i ) ; <br>چاپ "bbpress <span>\n"</span><br>اگر ($data =~ <span>/<meta name="generator" content="bbPress/i </span>) ؛ # یا <br><span># $data =~ /topic\.php\?id=\d+/i یا</span><br><span># $data =~ /forum\.php\?id=\d+/i);</span><br>چاپ "flashbb <span>\n"</span><br><span># if($data =~ /forums\.php\?fid=\d+/i یا</span><br><span># $data =~ /topic\.php\?fid=\d+/i یا</span><br>اگر ($data =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i</span>) ; <br>چاپ "stokesit <span>\n"</span><br><span># if($data =~ /forum\.php\?f=\d+/i یا</span><br>اگر ($data =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*Stokes IT/i</span>) ; <br>چاپ "تریبون <span>\n"</span><br><span># if($data =~ /topic\.php\?t=\d+/i یا</span><br>اگر ($data =~ <span>/<a[^>]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Podium/i</span>) ; <br>چاپ "usebb <span>\n"</span><br><span># if($data =~ /forum\.php\?id=\d+/i یا</span><br>اگر ($data =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i</span>) ; <br>چاپ "wrforum <span>\n"</span><br><span># if($data =~ /index\.php\?fid=\d+/i یا</span><br>اگر ($data =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i</span>) ; <br>چاپ "yetanotherforumnet <span>\n"</span><br>اگر ($data =~ /Yet Another Forum\.net/i یا <br>$data =~ <span>/default\.aspx\?g=posts&t=\d+/i</span>) ; </p> <p>این و سایر اسکریپت های ذکر شده در پست را می توانید در این آرشیو پیدا کنید.</p> <p>اسکریپت <i>which-forum.pl</i>کد صفحه html را برای وجود امضاهای موتور انجمن در آن بررسی می کند. ما هنگام تعریف وردپرس و جوملا از تکنیک مشابهی استفاده کردیم، اما چند تفاوت وجود دارد. اولاً، خود اسکریپت کد صفحه را بارگذاری نمی کند، بلکه آن را از stdin یا فایلی که به عنوان آرگومان ارسال می شود، می خواند. این به ما این امکان را می دهد که یک بار مثلاً با استفاده از wget صفحه را دانلود کنیم و در صورتی که بیش از یکی داریم آن را از طریق چندین تجزیه کننده اجرا کنیم. ثانیاً در این فیلمنامه وجود امضا نشان 100% موتور است. دفعه قبل، وجود امضا فقط به موتور مربوطه وزن می داد و موتور با بیشترین وزن را "برنده" می کرد. من تصمیم گرفتم که در این مورد، چنین رویکردی فقط کد را به طور غیر ضروری پیچیده می کند.</p> <p>برای تست فیلمنامه، کمی تحقیق کردم. من فهرستی از چندین هزار فروم تهیه کردم و هر یک از آنها را از طریق اسکریپت خود اجرا کردم و از این طریق درصد فعال سازی برنامه ها و محبوبیت موتورهای مختلف را تعیین کردم.</p> <p>برای دریافت لیست انجمن ها، از تجزیه کننده گوگل خود استفاده کردم. <a href="https://bar812.ru/fa/poiskovye-sistemy-rossii-i-lidiruyushchie-poiskoviki-interneta-kakaya.html">موتور جستجو</a>ارسال درخواست مانند</p> <p>سایت:forum.*.ru <br>سایت:talk.*.ru <br>سایت:board.*.ru <br>سایت: smf.*.ru <br>سایت: phpbb.*.ru <br> ....</p> <p>و غیره شما می توانید کد کامل ایجاد کننده پرس و جو را در فایل پیدا کنید <i>gen-forumsearch-urls.pl</i>. علاوه بر منطقه .ru، .su .ua .kz و .by نیز استفاده شد. دفعه قبل انجام چنین مطالعه ای دشوار بود، زیرا سایت های وردپرس و جوملا چنین امضایی در URL ندارند. کاتالوگ هایی مانند cmsmagazine.ru/catalogue/ حجم نمونه کافی را ارائه نمی دهند. 600 سایت در دروپال چیست؟</p> <p>باید اعتراف کنم که نتایج آزمایش من را ناامید کرد. از 12590 سایت مورد مطالعه، تنها 7083 موتور با موفقیت شناسایی شد، یعنی فقط در 56٪ موارد. شاید من موتور را در نظر نگرفتم؟ آیا Bitrix در نیمی از انجمن ها ایستاده است؟ یا باید زمان بیشتری را برای جستجوی امضا صرف می کردم؟ به طور کلی، در اینجا به تحقیقات بیشتری نیاز است.</p> <p>در میان 56 درصد موتورهایی که با موفقیت شناسایی شدند، IPB (31٪)، phpBB (26.6٪) و vBulletin (26.5٪) همانطور که انتظار می رفت محبوب ترین ها بودند.</p> <p>پس از آنها SMF (5.8٪) و DLEForum (5.3٪) قرار دارند. punBB مورد علاقه من فقط در مکان ششم (1.64٪) بود. من توصیه نمی کنم به شدت به این ارقام اعتماد کنید (آنها می گویند که هر سومین انجمن در Runet روی IPB کار می کند)، اما البته می توان نتیجه گیری های خاصی کرد.</p> <p>به عنوان مثال، اگر قصد دارید یک سایت در موتور فروم ایجاد کنید و قصد دارید تالار را تغییر دهید، مثلاً یک بار در هفته برای هر پیام 0.01 دلار به کاربران با برداشت خودکار وجه پرداخت کنید، باید یکی از سه موتور محبوب را انتخاب کنید. . هر چه انجمن محبوب تر باشد، احتمال بیشتری وجود دارد که برنامه نویسی را پیدا کنید که به خوبی در آن مسلط باشد.</p> <p>اگر هیچ تغییر قابل توجهی در موتور انتظار نمی رود، ممکن است منطقی باشد که یک موتور کمتر محبوب مانند SMF یا punBB انتخاب کنید. این باعث کاهش تعداد می شود <a href="https://bar812.ru/fa/hakerskaya-ataka-tp-link-kak-proverit-router-na-nalichie-virusov.html">حملات هکرها</a>به انجمن شما و میزان هرزنامه هایی که به صورت خودکار روی آن ارسال می شود.</p> <p>اسکریپت هایی برای جستجو/تعریف انجمن ها نیز می توانند بیش از یک فروم را پیدا کنند <a href="https://bar812.ru/fa/kak-primenit-ekshn-k-gruppe-fotografii-paketnaya-obrabotka-fotografii-v.html">استفاده عملی</a>. اولین چیزی که شخصاً به ذهن من رسید این بود که انجمن های شناسایی شده را بر اساس TCI مرتب کنم و پست هایی را با پیوند به یکی از سایت های آنها در صد مورد اول قرار دهم. با این حال، صد لینک dofollow انجمن به هیچ وجه بر TIC تأثیری نداشته است (2 به روز رسانی گذشته است)، بنابراین بهتر است زمان را در اینجا تلف نکنید، مگر اینکه به انتقال علاقه مند باشید.</p> <p>واضح است که استفاده نامبرده از اسکریپت ها تنها مورد استفاده قرار نمی گیرد. من فکر می کنم شما به راحتی می توانید بفهمید که چگونه می توانید از آنها استفاده کنید.</p> <p>با سلام خدمت خوانندگان محترم سایت وبلاگ. بنابراین، ما موضوع راه اندازی یک موتور انجمن به نام SMF را که در یک پست در مورد آن آغاز شده است، ادامه می دهیم. در آنجا ما هنوز انجمن را از نظر ترجمه از رابط انگلیسی روسی نکرده ایم. در حال حاضر چندان قابل ارائه به نظر نمی رسد، اما پس از Russification (اگر هنوز انجام نشده باشد) و ایجاد بخش های مناسب، ظاهر آن به طور قابل توجهی بهبود می یابد.</p><p>امروز ما تم ها را در نظر می گیریم و آن را روسی می کنیم، همچنین کامپوننت JFusion را نصب می کنیم، که می تواند با هر دو موتور (هر دو Jumla و SMF) کار کند، که به ما امکان می دهد یک پایگاه کاربر مشترک برای دو و فقط یک فرم ثبت آنها داشته باشیم. و وارد شوید</p><h2>تم ها و نصب بسته زبان روسی</h2><p>موتور Simple Machines Forum از قابلیت تغییر موضوعات پشتیبانی می کند و می توان آنها را هم برای کل انجمن به طور کلی و هم برای بخش های جداگانه آن تغییر داد. من شخصا از تم پیش فرض استفاده کردم، اما تغییرات دستی زیادی در آن ایجاد کردم. به طور خاص، من پس زمینه، طرح های رنگی برخی از عناصر را تغییر دادم، یک ساعت فلش، یک رادیو و بسیاری موارد دیگر اضافه کردم که در پست های بعدی در این بخش در مورد آنها صحبت خواهم کرد.</p><p>چرا هنگام ایجاد انجمن از هیچ یک از تم های اضافی استفاده نکردم؟ خوب، احتمالاً همه چیز به تنبلی من مربوط می شود. نه، من برای جستجو و دانلود تم های جدید تنبل نبودم، زیرا مکان های زیادی وجود دارد که می توان این کار را انجام داد. تنبلی من جای دیگری است.</p><p>واقعیت این است که تمام حالت های مختلف این موتور که برای گسترش قابلیت های آن طراحی شده است، به طور خاص بر روی موضوع پیش فرض متمرکز شده است. من توضیح می دهم. اگر یک تم پیش فرض دارید، اضافه کردن این یا آن مد به SMF چند ثانیه طول می کشد و، به عنوان یک قاعده، نیازی به ویرایش دستی کد ندارد.</p><p>در مورد نصب یک مود بر روی یک موضوع طراحی غیر از حالت پیش فرض، همانطور که می گویند لازم است تمام جزئیات خام با یک فایل پردازش شود. به عبارت دیگر، شما مجبور خواهید بود <a href="https://bar812.ru/fa/kak-stavit-shablony-osnovy-photoshop-sozdanie-besshovnoi-zalivki-pattern-dlya.html">با استفاده از FileZilla</a>(آن را دانلود و پیکربندی کنید، می توانید از طریق FTP به سایت دسترسی پیدا کنید و برای ویرایش فایل های موتور انجمن خود باز کنید، که در آن <a href="https://bar812.ru/fa/skyrim-launcher-ne-vidit-faily-launcher-skairim-ne-vidit-mody-kak-reshit.html">این مد</a>تغییراتی ایجاد می کند.</p><p>سپس به دنبال <a href="https://bar812.ru/fa/zachem-nuzhen-validnyi-kod-i-kak-ustranit-oshibki-validacii-url-adresa-v.html">جای مناسب</a>در کد و انجام اقدامات لازم: یا جایگزین کردن کد، یا حذف، یا اضافه کردن یک قطعه کد قبل یا بعد از قطعه مورد نیاز. با توجه به اینکه ممکن است حدود ده ها فایل وجود داشته باشد که باید تغییراتی در آنها ایجاد شود، می توان تصور کرد که انجام این کار چقدر مشکل ساز خواهد بود. در این صورت باید بسیار مراقب باشید و اشتباه نکنید زیرا در غیر این صورت ممکن است انجمن اصلا باز نشود.</p><p>اگر تمام مشکلات استفاده از یک تم غیر پیش فرض ذکر شده در بالا شما را نمی ترساند، می توانید آنها را از اینجا دانلود کنید. موضوعات موجود در بخش ها (مینیمالیسم، نزدیک به کلاسیک، مدرن و غیره) طبقه بندی شده اند و برای هر یک از آنها می توانید اسکرین شات آن را مشاهده کنید. <a href="https://bar812.ru/fa/kak-sdelat-polnoekrannyi-vyiti-na-polnyi-ekran-kak-nastroit.html">تمام صفحه</a>. نحوه نصب همین تم ها را کمی بعد خواهم گفت.</p><p>اگر همانطور که در قسمت اول این کار توضیح داده شد در مرحله آپلود فایل های موتور در هاست، انجمن را روسی نکردید (لینک در ابتدای مقاله را ببینید)، اکنون می توانید این کار را انجام دهید. روسی از این صفحه از پیش دانلود شده است <a href="https://bar812.ru/fa/posylaet-index-php-topic-powered-by-smf-temy-oformleniya-i-rusifikaciya-foruma-smf-a-tak-zhe.html">بسته اموزشی زبان</a>با مورد دلخواه، باید بسته بندی را باز کنید و سپس پوشه Themes را در آن کپی کنید <a href="https://bar812.ru/fa/html-absolyutnye-i-otnositelnye-ssylki-sozdanie-ssylki-otnositelno.html">پوشه ریشه</a>جایی که قبلاً دایرکتوری با همین نام وجود دارد.</p><p>پس از اتمام کپی، باید با استفاده از لاگین و رمز عبور مدیر به انجمن بروید. "Admin" را از منوی بالا انتخاب کنید و سپس روی "Server Settings" از ستون سمت چپ کلیک کنید.</p><p>در پنجره ای که باز می شود، آیتم "زبان پیش فرض انجمن" را پیدا کنید و زبان روسی را از لیست کشویی انتخاب کنید و سپس روی دکمه "ذخیره" در پایین صفحه کلیک کنید.</p><p><img src='https://i1.wp.com/ktonanovenkogo.ru/image/16.092.png' width="100%" loading=lazy loading=lazy></p><p>تمام، اکنون کنفرانس شما کاملاً به زبان روسی است.</p><h3>حل مشکلات هنگام نصب مدهایی که از زبان روسی پشتیبانی نمی کنند</h3><p>لطفاً توجه داشته باشید که در آینده هنگام افزودن مودهایی به SMF که ترجمه روسی ندارند، ممکن است گاهی اوقات با نمایش تنظیمات مود در پنل مدیریت با مشکل مواجه شوید. در واقع، همین تنظیمات در پنل مدیریت به سادگی قابل مشاهده نخواهد بود، زیرا. هیچ فایل Russification برای آنها وجود نخواهد داشت. بنابراین شما دو گزینه برای حل این مشکل خواهید داشت.</p><p>راه اول این است که برای کل انجمن به زبان انگلیسی سوئیچ کنید. چگونه می توان این کار را انجام داد، می توانید چند پاراگراف بالا را ببینید. بر این اساس، پس از انجام اقدامات لازم با این تنظیمات، باید دوباره به زبان روسی برگردید.</p><p>روش دوم پیچیده تر است، اما به ما این امکان را می دهد که تنظیمات مودهای نصب شده را همیشه در پنل مدیریت ببینیم و نه تنها در صورت فعال شدن <a href="https://bar812.ru/fa/trikolor-tv-akcii-po-oplate-akcii-trikolor-tv-besplatnyh-uroka.html">از زبان انگلیسی</a>. من در این مورد با جزئیات صحبت می کنم زیرا این سوال که شخصی یک مود را نصب کرده است و نمی تواند تنظیمات آن را در پنل مدیریت برد خود پیدا کند بسیار رایج است.</p><p>بنابراین، راه دوم اضافه کردن خطوط ترجمه به فایل‌های Russification برای مدهای جدید اضافه شده است. نحوه تعیین اینکه کدام فایل های Russification نیاز به تغییر دارند و از کجا می توان آنها را دریافت کرد، بعداً خواهم گفت. در ضمن به طور موقت می توانید از روش اول استفاده کنید.</p><h2>نصب JFusion برای ادغام سایت و انجمن</h2><p>ابتدا باید JFusion و Russification آن را دانلود کنید. پس از ورود به پنل مدیریت جوملا، اقدامات استاندارد را انجام می دهیم: انتخاب از <a href="https://bar812.ru/fa/fiksirovannoe-verhnee-menyu-i-plavayushchii-saidbar-v-wordpress.html">منوی بالا</a>موارد پنل مدیریت "افزونه ها" - "نصب / حذف" - "آپلود فایل بسته" - دکمه "مرور" - ما در رایانه خود فایلی با مولفه jfusion_package.zip پیدا می کنیم - روی دکمه "آپلود فایل و نصب" کلیک کنید. ".</p><p>پس از آن، پنجره ای ظاهر می شود که به شما اطلاع می دهد که مؤلفه با موفقیت نصب شده است. اگر مشکلی پیش آمد، می توانید با گزینه های حل برخی از آنها در لینک بالا آشنا شوید.</p><p>حالا نوبت به Russification است که به همان شکل خود کامپوننت اضافه می شود. آن ها دنباله اقدامات را تکرار کنید: "افزونه ها" - "نصب / حذف" - "آپلود فایل بسته" - دکمه "مرور" - فایل JFusion Russification را در رایانه خود پیدا کنید - روی دکمه "آپلود فایل و نصب" کلیک کنید. اکنون می توانیم به تنظیمات در مسیر "Components" - "JFusion" برویم و مطمئن شویم که Russification با موفقیت اضافه شده و کار می کند.</p><p><img src='https://i1.wp.com/ktonanovenkogo.ru/image/16.093.png' width="100%" loading=lazy loading=lazy></p> <p>موفق باشی! به زودی شما را در سایت صفحات وبلاگ می بینیم</p><h3></h3><p>ممکن است علاقه مند باشید</p><p><img src='https://i0.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/nastroika-jfusion.jpg' width="100%" loading=lazy loading=lazy><span>پیکربندی JFusion برای Fusion <a href="https://bar812.ru/fa/prigotovil-index-php-topic-powered-by-smf-temy-oformleniya-i-rusifikaciya.html">انجمن SMF</a>و سایت جوملا</span> <br><img src='https://i2.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/moduli-jfusion.jpg' width="100%" loading=lazy loading=lazy><span>ماژول های JFusion برای نمایش پیام ها از انجمن در سایت و همچنین ایجاد دکمه در SMF برای بازگشت به جوملا</span> <br><img src='https://i2.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/forum-joomla.jpg' width="100%" loading=lazy loading=lazy><span>ایجاد آیتم منو در جوملا برای ورود به انجمن و انتقال ثبت نام کاربر از SMF به سایت</span> <br><img src='https://i0.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/ustanovka-smf.jpg' width="100%" loading=lazy loading=lazy><span>نصب انجمن SMF - جوملا 1.5 و ادغام انجمن ماشین های ساده با استفاده از <a href="https://bar812.ru/fa/gordostyu-index-php-topic-powered-by-smf-temy-oformleniya-i-rusifikaciya-foruma-smf-a-tak-zhe.html">جزء JFusion</a> </span> <br><img src='https://i1.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/rasshireniya-joomla.jpg' width="100%" loading=lazy loading=lazy><span>برنامه های افزودنی برای جوملا - چیست و کجا می توان کامپوننت ها، ماژول ها و پلاگین ها را برای جوملا دانلود کرد، نحوه نصب و حذف آنها</span> <br><img src='https://i0.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/k2-joomla.jpg' width="100%" loading=lazy loading=lazy><span>جزء K2 برای ایجاد وبلاگ، کاتالوگ و پورتال در جوملا - ویژگی ها، نصب و روسی سازی</span> <span>گالری عکس برای جوملا - قسمت 3 - ایجاد گالری در جوملا 1.5 با استفاده از کامپوننت Phoca Gallery - اضافه کردن دسته ها و آپلود تصاویر در گالری عکس</span> <br><img src='https://i1.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/artio-joomsef.jpg' width="100%" loading=lazy loading=lazy><span>ARTIO JoomSEF - سفارشی سازی پیوندها و عنوان CNC (SEF) در جوملا، و همچنین ایجاد یک صفحه خطای 404 با استفاده از این پسوند</span> <br><img src='https://i2.wp.com/ktonanovenkogo.ru/wp-content/uploads/2013/10/joomlapack.jpg' width="100%" loading=lazy loading=lazy><span>Akeeba Backup (جوملا پک سابق) - ایجاد یک نسخه پشتیبان از یک سایت در جوملا و بازیابی از <a href="https://bar812.ru/fa/mozhno-li-ustanavlivat-windows-10-sposoby-besplatnogo-poluchenie-licenzii.html">پشتیبان گیری</a>در دو کلیک</p> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast_after?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy loading=lazy>");</script> </div> </div> </div> <div class="td-pb-span4 td-main-sidebar" role="complementary"> <div class="td-ss-main-sidebar"> </div> </div> </div> </div> </article> <script type="text/javascript"> try { var sbmt = document.getElementById('submit'), npt = document.createElement('input'), d = new Date(), __ksinit = function() { sbmt.parentNode.insertBefore(npt, sbmt); }; npt.value = d.getUTCDate() + '' + (d.getUTCMonth() + 1) + 'uniq9065'; npt.name = 'ksbn_code'; npt.type = 'hidden'; sbmt.onmousedown = __ksinit; sbmt.onkeypress = __ksinit; } catch (e) {} </script> <div class="td-sub-footer-container td-container-wrap "> <div class="td-container "> <div class="td-pb-row "> <div class="td-pb-span td-sub-footer-menu "></div> <div class="td-pb-span td-sub-footer-copy ">2022 bar812.ru. فقط در مورد مجتمع برنامه ها. اهن. اینترنت. پنجره ها</div> </div> </div> </div> </div> <script data-cfasync="false" type="text/javascript"> if (window.addthis_product === undefined) { window.addthis_product = "wpwt"; } if (window.wp_product_version === undefined) { window.wp_product_version = "wpwt-3.1.2"; } if (window.wp_blog_version === undefined) { window.wp_blog_version = "4.9.1"; } if (window.addthis_share === undefined) { window.addthis_share = {}; } if (window.addthis_config === undefined) { window.addthis_config = { "data_track_clickback": true, "ui_language": "ru", "ui_atversion": "300" }; } if (window.addthis_plugin_info === undefined) { window.addthis_plugin_info = { "info_status": "enabled", "cms_name": "WordPress", "plugin_name": "Website Tools by AddThis", "plugin_version": "3.1.2", "plugin_mode": "AddThis", "anonymous_profile_id": "wp-f2d21fd70bfc0c32605b4e5e1e4ff912", "page_info": { "template": "posts", "post_type": "" }, "sharing_enabled_on_post_via_metabox": false }; } (function() { var first_load_interval_id = setInterval(function() { if (typeof window.addthis !== 'undefined') { window.clearInterval(first_load_interval_id); if (typeof window.addthis_layers !== 'undefined' && Object.getOwnPropertyNames(window.addthis_layers).length > 0) { window.addthis.layers(window.addthis_layers); } if (Array.isArray(window.addthis_layers_tools)) { for (i = 0; i < window.addthis_layers_tools.length; i++) { window.addthis.layers(window.addthis_layers_tools[i]); } } } }, 1000) }()); </script> <script type='text/javascript'> var tocplus = { "smooth_scroll": "1", "visibility_show": "\u043f\u043e\u043a\u0430\u0437\u0430\u0442\u044c", "visibility_hide": "\u0441\u043a\u0440\u044b\u0442\u044c", "width": "Auto" }; </script> <script type='text/javascript' src='https://bar812.ru/wp-content/plugins/disqus-comment-system/media/js/disqus.js?ver=bbebb9a04042e1d7d3625bab0b5e9e4f'></script> <script> (function() { var html_jquery_obj = jQuery('html'); if (html_jquery_obj.length && (html_jquery_obj.is('.ie8') || html_jquery_obj.is('.ie9'))) { var path = '/wp-content/themes/Newspaper/style.css'; jQuery.get(path, function(data) { var str_split_separator = '#td_css_split_separator'; var arr_splits = data.split(str_split_separator); var arr_length = arr_splits.length; if (arr_length > 1) { var dir_path = '/wp-content/themes/Newspaper'; var splited_css = ''; for (var i = 0; i < arr_length; i++) { if (i > 0) { arr_splits[i] = str_split_separator + ' ' + arr_splits[i]; } //jQuery('head').append('<style>' + arr_splits[i] + '</style>'); var formated_str = arr_splits[i].replace(/\surl\(\'(?!data\:)/gi, function regex_function(str) { return ' url(\'' + dir_path + '/' + str.replace(/url\(\'/gi, '').replace(/^\s+|\s+$/gm, ''); }); splited_css += "<style>" + formated_str + "</style>"; } var td_theme_css = jQuery('link#td-theme-css'); if (td_theme_css.length) { td_theme_css.after(splited_css); } } }); } })(); </script> <div id="tdw-css-writer" style="display: none" class="tdw-drag-dialog tdc-window-sidebar"> <header> <a title="ویرایشگر" class="tdw-tab tdc-tab-active" href="#" data-tab-content="tdw-tab-editor">با Live CSS ویرایش کنید</a> <div class="tdw-less-info" title="هنگامی که خطا در CSS و LESS شما شناسایی شود، قرمز خواهد بود"></div> </header> <div class="tdw-content"> <div class="tdw-tabs-content tdw-tab-editor tdc-tab-content-active"> <script> (function(jQuery, undefined) { jQuery(window).ready(function() { if ('undefined' !== typeof tdcAdminIFrameUI) { var $liveIframe = tdcAdminIFrameUI.getLiveIframe(); if ($liveIframe.length) { $liveIframe.load(function() { $liveIframe.contents().find('body').append('<textarea class="tdw-css-writer-editor" style="display: none"></textarea>'); }); } } }); })(jQuery); </script> <textarea class="tdw-css-writer-editor td_live_css_uid_1_5a5dc1e76f1d6"></textarea> <div id="td_live_css_uid_1_5a5dc1e76f1d6" class="td-code-editor"></div> <script> jQuery(window).load(function() { if ('undefined' !== typeof tdLiveCssInject) { tdLiveCssInject.init(); var editor_textarea = jQuery('.td_live_css_uid_1_5a5dc1e76f1d6'); var languageTools = ace.require("ace/ext/language_tools"); var tdcCompleter = { getCompletions: function(editor, session, pos, prefix, callback) { if (prefix.length === 0) { callback(null, []); return } if ('undefined' !== typeof tdcAdminIFrameUI) { var data = { error: undefined, getShortcode: '' }; tdcIFrameData.getShortcodeFromData(data); if (!_.isUndefined(data.error)) { tdcDebug.log(data.error); } if (!_.isUndefined(data.getShortcode)) { var regex = /el_class=\"([A-Za-z0-9_-]*\s*)+\"/g, results = data.getShortcode.match(regex); var elClasses = {}; for (var i = 0; i < results.length; i++) { var currentClasses = results[i] .replace('el_class="', '') .replace('"', '') .split(' '); for (var j = 0; j < currentClasses.length; j++) { if (_.isUndefined(elClasses[currentClasses[j]])) { elClasses[currentClasses[j]] = ''; } } } var arrElClasses = []; for (var prop in elClasses) { arrElClasses.push(prop); } callback(null, arrElClasses.map(function(item) { return { name: item, value: item, meta: 'in_page' } })); } } } }; languageTools.addCompleter(tdcCompleter); window.editor = ace.edit("td_live_css_uid_1_5a5dc1e76f1d6"); // 'change' handler is written as function because it's called by tdc_on_add_css_live_components (of wp_footer hook) // We did it to reattach the existing compiled css to the new content received from server. window.editorChangeHandler = function() { //tdwState.lessWasEdited = true; window.onbeforeunload = function() { if (tdwState.lessWasEdited) { return "You have attempted to leave this page. Are you sure?"; } return false; }; var editorValue = editor.getSession().getValue(); editor_textarea.val(editorValue); if ('undefined' !== typeof tdcAdminIFrameUI) { tdcAdminIFrameUI.getLiveIframe().contents().find('.tdw-css-writer-editor:first').val(editorValue); // Mark the content as modified // This is important for showing info when composer closes tdcMain.setContentModified(); } tdLiveCssInject.less(); }; editor.getSession().setValue(editor_textarea.val()); editor.getSession().on('change', editorChangeHandler); editor.setTheme("ace/theme/textmate"); editor.setShowPrintMargin(false); editor.getSession().setMode("ace/mode/less"); editor.setOptions({ enableBasicAutocompletion: true, enableSnippets: true, enableLiveAutocompletion: false }); } }); </script> </div> </div> <footer> <a href="#" class="tdw-save-css">صرفه جویی</a> <div class="tdw-more-info-text">CSS OR LESS را بنویسید و save را بزنید. CTRL + SPACE برای تکمیل خودکار.</div> <div class="tdw-resize"></div> </footer> </div> <script type="text/javascript" defer src="https://bar812.ru/wp-content/cache/autoptimize/js/autoptimize_d85127d8732b44d62e81e0455b3d3cb7.js"></script> </body> </html>