Joomla olmadan yaşayamayacağımı herkes biliyor, ama bence, iyi forumlar bileşenlerde, hayır. Bu yüzden forum motorlarıyla çalışıyorum. Yakın zamanda kullanmaya başladığım yenilerden biri, umarım yeni bir SMF kategorisi başlatmaktır. faydalı malzeme. Küçük başlıyoruz, iyi, yeni başlayanlar olarak çok faydalı.

İlk adımlar Arama motoru optimizasyonu Basit Makineler Forumu: telif hakkı ve harici bağlantıları kaldırın

Sadece smf 2 ile çalıştığım için hemen bir rezervasyon yapacağım ve bu makale özellikle ücretsiz forum motorunun bu sürümüne atıfta bulunacak.

Ve böylece, düzenli okuyucular, forum siteleri de dahil olmak üzere, resmi motor sitelerine "10" harici bağlantı koymaktan ne kadar hoşlanmadığımı biliyorlar. Bu nedenle, her şeyden önce, telif hakkını kaldırıyoruz ve 4'e kadar, formun 4 harici linkine dikkat edin " SMF 2.0.2 | Basit Makineler | SMF © 2011 | XHTML" ! Bunu yapmak için siteye FTP forum/Temalar/ üzerinden bağlanın. temanızın adı/ ve dosyayı düzenleyin index.template.php. Doğal olarak, en altta, pek sevmediğimiz harici bağlantıları gösteren kod (330 numaralı satır hakkında) bulunur. Bu nedenle, kaldırıyoruz: "

  • ", theme_copyright(), "
  • " ve "
  • ", $txt["xhtml"], "
  • ". Her şey çok basit ve kolay. Sonraki yayınlarda, SMF'deki forumları tanıtma ve optimize etme konusunda yeni materyaller bekleyin /

    Botmaster Labs tarafından organize edildi, planlanmadı. Zaman yok, yeni bir trend olarak yarışma için videoya ihtiyaç var, ancak her şeyi iyi ekran görüntüleri (IMHO'm) ile açıklamak daha kolay olsa da ve gerçekten hiçbir şey çekmek istemiyorum. Geriye çok az karlı konu kaldı, aptal spam artık kural değil, burada düşünmeniz gerekiyor ve sadece eskimiş güzel bir ambalaj ve biraz toz haline getirmeye çalışırsa kimse konuyu çekmeyecek. :) Ama bu bizimle ilgili değil. Genel olarak, bu 3 "değil", bence, çoğu potansiyel katılımcı için rekabete katılımın önündeki engeller haline geldi. Üçte bir araba tamiri gibi: ucuz, kaliteli, hızlı - hizmette aynı anda sadece 2 koşulu yerine getirebilirler. otur ve sana daha yakın olanı seç. :) Yarışmada da aynı: Zamanım var, video yapabilirim ama konu yok veya video yapabilirim, bir konu var ama hiç zamanım yok ya da var. boş zaman ve küçük bir konu var ama video korkutuyor. Ancak aynı anda 2 koşulun karşılanması iyidir. Tamam, sözleri bırakalım. kendime devam edeceğim. Planlamadım, yarışmaya katılacağım, hatta hangi makaleye oy vereceğimi bile seçtim. Ne istersen söyle ama Doz yazılımı çok iyi biliyor ve çok mantıklı kullanmayı biliyor. Ama bugün yarışmada entrikanın ortaya çıktığını öğrendim. Oy kullanamayacağım ortaya çıktı, ancak yalnızca 2011'de yazılımı satın alan ve yarışma onlar için tasarlanmış yeni başlayanlar yapabilir. Biraz şaşırdım ama sahibi bir beyefendi. Yarışma bir reklam kampanyasıdır ve Alexander bunun nasıl yürütüleceğini daha iyi bilir. Genel olarak, bir makale yayınlamaya karar verdim, kimin için açık olduğu zaman yazmak biraz daha kolay, aslında bunu tüm toplu çiftlik için yapmak imkansız.
    Uzun tanıtım bitti, şimdi konuya.
    Xrumer + Hrefer kompleksi olan böyle bir süper biçerdöver edindiğinde yeni başlayan birinin neye ihtiyacı vardır? Bu doğru, üzerinde nasıl çalışacağınızı öğrenin ve spam sayfaları göndermeye başlayarak para kazanabileceğiniz yanılsamasını atın. Böyle düşünüyorsanız, paranızı hemen hayır kurumlarına bağışlayın. Kompleksin araçlarını nasıl kullanacağınızı, tercihen kendiniz için keskinleştirmeyi öğrenmeniz gerekir. "Daha fazla alma - daha fazla atma" zamanı bitti. Nicelik kaliteye yol açar. Bu yüzden üssü kendimiz için toplayacağız, nasıl yapılacağını öğrenmeyin - trenin arkasına düşeceksiniz. Elbette, Khrefer bize bu konuda yardımcı olacaktır. Kaynaklarınızı Google'da tanıtmayı planlıyorsanız, Google aracılığıyla bağış siteleri de aramamız gerekir. Bunun anlaşılabilir ve mantıklı olduğunu düşünüyorum. Ancak Google, bakır dağın metresi olarak servetini herkese dağıtmıyor. Bir yaklaşıma ihtiyacı var. Hemen söylemek isterim ki, halkta bulduğunuz işaretlere göre bir şeyler toplayacağınızı ummayın. Bu yüzden değersiz oldukları için halka açıktırlar. Konuyu daha fazla geliştirmeyeceğim. Sonucu görmeniz için nasıl doğru bir şekilde monte edeceğinizi söylemek daha iyidir, gerisini kendiniz sonuçlandıracaksınız, asıl şey prensibi anlamaktır. Genel olarak forumların işaretlerine göre değil, ihtiyacımız olan belirli motorların işaretlerine göre doğru olana göre toplamak gerekiyor. BT ana hata yeni başlayanlar - belirli bir şeye konsantre olmayın, her şeyi bir bütün olarak ele almaya çalışın. Yine de, az çok normal bir tabanı ayrıştırmak istiyorsanız, sorgularda operatörleri kullanmayı reddedin. "inurl:", "site:", "başlık" vb. Google, sizin gibi arama yapanları anında yasaklayacaktır. Bu nedenle, hangi motorları dikkatle inceliyoruz? şu an Hrumer'in çalışmaları:

    php-Fusion tarafından desteklenmektedir

    Chrumer 7.07 sürümünde, program birkaç yeni motorla eğitilmiştir:

    forumi.biz, forumb.biz, 1forum.biz, 7forum.biz vb.

    phpBB-fr.com, Solaris phpBB teması

    Ve yeni şeyler öğrenme süreci sürekli devam ediyor.
    Genel olarak, Khrefer tarafından ayrıştırma için doğru sorguları hazırlamamız gerekiyor. Örnek olarak forum dizhok'u alalım. SMF Forumları. Ve ayrıştırmak için parçalara ayırmaya başlayacağız. Sevgili Google'ımız bu konuda bize yardımcı olacaktır. Google Sorgusu Girme SMF Forumları- konuda çok fazla çöp var, 13. sayfaya geri sarın ve herhangi bir bağlantıyı seçin. Buna rastladım: http://www.volcanohost.com/forum/index.php?topic=11.0 . Hadi açıp inceleyelim. Sayfada, bu motordaki diğer sayfaları aramak için uygulanabilecek karakteristik bir şey bulmamız gerekiyor. Altbilgide aşağıdaki yazıyı fark ediyoruz SMF 1.1.14 tarafından desteklenmektedir, alıntı yapıyoruz ve Google'a giriyoruz, bize bu istek için 59 milyon seçenek bildiğini gösteriyor. Bağlantıları gözden geçiriyoruz, bu anahtar kelimeye birkaç seçenek daha ekliyoruz, örneğin, "SMF 1.1.14 tarafından desteklenmektedir" kavak veya SMF 1.1.14 viagra tarafından desteklenmektedir. İsteğin şık olduğuna, yalnızca forumların yayınlanmasına ve sizin için neredeyse hiç çöp olmadığına ikna olduk.

    Ayrıca yukarıda da söylediğim gibi nicelikle değil nitelikle ilgileniyoruz. Devam et. Aynı forumdan altbilgiden başka bir ifade alıyoruz: , ayrıca alıntı yapın ve Google'a besleyin. Yanıt olarak, 13 milyondan fazla sonucu bildiğini ortaya koyuyor. Yine çıktıya göz atıyoruz, ek kelimeler ekliyoruz ve çıktıyı onlarla kontrol ediyoruz. İsteğin mükemmel olmasını ve neredeyse hiç çöp olmamasını sağlıyoruz. Genel olarak, zaten 2 demir talebi var. İlk forumun şimdilik kendi haline bırakılmasını ve diğer forumlardan gelen taleplerin toplanmasına devam edilmesini öneriyorum. Neyse ki, Google istek üzerine açıktır 2006-2008 Basit Makineler LLC. Konudan örneğin şu forumları alıyoruz: http://www.snowlinks.ru/forum/index.php?topic=1062.0 ve http://litputnik.ru/forum/index.php?action=printpage; topic=380.0 altbilgide onlardan şu istekleri alıyoruz: "Powered by SMF 1.1.7" ve "Powered by SMF 1.1.10" (Khrefer isteklerini her zaman tırnak içinde yönlendirmenizi tavsiye ederim, çünkü önce kaliteye ihtiyacımız var tüm). Sanırım ne yaptığımız açık, sonunda SMF motorunda forum aramak için belirli bir sorgu veritabanına sahip olacağız (örnek olarak seçildi, diğer motorlarla benzer).
    Bunun gibi bir şey görünecek:

    SMF 1.1.2 tarafından desteklenmektedir

    SMF 1.1.3 tarafından desteklenmektedir

    SMF 1.1 RC2 tarafından desteklenmektedir

    SMF 1.1.4 tarafından desteklenmektedir

    SMF 1.1.8 tarafından desteklenmektedir

    SMF 1.1.7 tarafından desteklenmektedir

    "2006-2008, Simple Machines LLC"

    Ve hepsi bu değil. Motor versiyonlarını toplarken, bazı SMF forumlarında alt bilgide "2001-2006, Lewis Media" çıkıntısını buluyoruz. Bu talebi kontrol ediyoruz, bizi de tam anlamıyla tatmin ediyor. Benzer bir sorgu buluyoruz: "2001-2005, Lewis Media". Altbilgileri daha fazla çalıştırarak şu isteği buluyoruz: "SMFone design by A.M.A, SMF 1.1'e taşındı". Şuna bir bakın - harika. Ve benzeri. Yarım saatlik bir çalışma ve motorda harika bir sorgu veritabanınız var ve bu sorgular için Google, operatörleri kullanmanızdan çok daha az yasaklayacaktır. Ve aynı zamanda, veritabanınız "index.php?topic=" gibi sorgular kullanmaktan çok daha temiz olacaktır, çünkü burada Google yalnızca ihtiyacımız olan forumları değil, aynı zamanda mümkün olduğu kadar çok sayıda kalan kaynağı da verecektir. forum konusuna bir link bırakın. Tartışabilirsin, derler ki, bunda yanlış olan ne? Diğerleri bir bağlantı bıraktı, böylece yapabiliriz. Fakat! Linkler sadece Hrumer tarafından değil, diğer programlar tarafından da bırakılabilir. dahası, belirli bir kaynakta, sözde son derece uzmanlaşmış yazılımda yorum bırakmak için özel olarak keskinleştirilebilirler, ayrıca bu tür bağlantılar elle bırakılabilir. Tekrar ediyorum, bizim için önemli olan çöpün miktarı değil kalitesidir, zaten doğru taleplerle tabandan toplayacağız. Bir artı Bu method ayrıca pratik olarak yapılandırmanıza gerek kalmayacak elek filtresi , basitçe kapatılabilir, çünkü Google pratik olarak size çöp vermeyecektir.


    İlk aşamada Chrefer'ı nasıl doğru bir şekilde kullanacağınızı öğrenmenin çok önemli olduğunu düşünüyorum, çünkü bunu öğrendikten sonra, durum nasıl değişirse değişsin her zaman Chrumer için bir kullanım bulabilirsiniz. Savunmalar daha karmaşık hale geliyor ve bazı motor türlerinde korumayı güçlendirdiler ve bununla baş edemiyorlarsa şu an Khrumer, bu bağlantıları toplamak için kaynak harcamak ve daha sonra Khrumer ile bunlar üzerinde çalışmak mantıklı değil, sonucu veren şeye odaklanmak daha iyidir. Aynı zamanda, Botmaster Labs ekibi Chrumer'a yeni bir şey öğrettiyse, yeni bir hastayı hızla kesebilir ve hasta hala sıcakken Chrumer'ın tabanını hazırlayabilirsiniz. Vakit nakittir, üssü satın aldığınızda kaynak artık alakalı olmayabilir. birisi tarafından toplanmıştır. Ek olarak, kendiniz için doğru baz koleksiyonu, Khrumer'in "beyaz" kullanımını büyük ölçüde genişletir. Ve bu, hoşumuza gitsin ya da gitmesin, her şeyin hareket ettiği yerdir, ancak beyazlaşma veya grileşme süreci devam etmektedir. Geçmişe gidebileceğiniz her şey için siyah sayfalar.
    Hrefer ile çalışmanın diğer tüm teknik yönleri yardımda görülebilir ve bunlar üzerinde durmanın bir anlamı yoktur, tüm hedefler-puan-saniyeler her araba için ayrı ayrı deneysel olarak belirlenir.
    Bonus olarak, buraya Çin arama motoru Baidu'yu ayrıştırmak için bir şablon göndereceğim, geçen gün bana sorulmuştu, bu yüzden arada yaptım, kelime oyunu için özür dilerim. :)


    Hostname=http://www.baidu.com
    Sorgu=s?wd=
    BağlantılarMask=
    ToplamSayfa=100
    SonrakiSayfa=

    SonrakiSayfa2=

    CaptchaURL=
    CaptchaImage=
    CaptchaAlan=


    Onları ayrıştırmayı test etmeye çalıştım, yasak yoktu, Khrefer kaynakları hızlı bir şekilde topladı, tüm ayrıştırma talepleri Google'ınkine benziyordu, ancak bir Çin kaynakları denizi vardı ve yüksek bir PR ile ve ayrıca bir Avrupa pek çok yere ayak basmamıştı. Çince isteklerle ayrıştırmak daha iyidir. Google Translate bu konuda yardımcı olacak, Rusça bir anahtar kelime listesi yazıp Çince'ye çevirecek. içindeki gerçek kelimeler"Chrefer'in sözleri Çince'de bir araya getirilemez, yeniden kodlanmaları gerekir.
    Çince yerine:

    伟哥 - viagra

    吉他 - gitar

    其他 - dinlenme

    保险公司 - sigorta

    Değiştirmek için bu kodları Words dosyasına koyun:

    %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

    Bir sigorta sitesini tanıtıyorsanız, profilinizde bir tematik (!) hatta istek üzerine bulunan bir Çin forumunda bir bağlantı yayınlayarak " forum SMF" 保险公司çok iyi olacak.
    Sonuç olarak şunu söylemek isterim ki, Khreferlerin kötü olduğundan ya da ayrıştırmadığından şikayet edenleri hiç anlamamışımdır, hep bunu söylemek istemişimdir, siz sadece nasıl pişireceğinizi bilmiyorsunuz. Tek bir ayrıştırıcı bir yönlendiriciden daha iyi değildir, sadece doğru olması gerekir. Hrefer bir araba: iyi, sağlam, Almanca yapılmış, ancak bir kişi onu kontrol ediyor ve her şey ne kadar mantıklı sürüldüğüne bağlı, arabayı aynı anda sağa ve sola gitmeye zorlayamazsınız.
    Ayrı bir konu üslerin temizliği, bir önceki yarışma için 3 yıl önce yapmıştım. Oradan her şey hala alakalı, ama şimdi 200'ü kontrol etmeyi reddedebilirsiniz Tamam, bu süreci gerçekten beğenmedim, hatalar çok büyüktü, çok fazla gereksiz filtrelendi. Şimdi bu, Chrumer'ın çalışması sırasında neredeyse otomatik olarak yapılabilir, ancak bu işlem "200 OK" kontrolünün tam bir analogu değildir. Genel olarak, şu noktaya kadar: çok uzun zaman önce, Khrumer'de harika bir fırsat ortaya çıktı - proje çalışması sırasında kaynaklardan bilgi çalmak. Şuna benziyor. Çalışma sırasında işlenecek bir şablonda sürüyorsunuz ve şablona göre toplanan bilgiler Logs klasöründeki xgrabbed.txt dosyasına girilecek. Bu işlevi herhangi bir şey için kullanabilirsiniz, fantezi uçuşu çok büyük. Bu işlevi, "süresi dolmuş" çalışma tabanından bağlantıları kaldırmak için haftada bir kullanıyorum. Tabanı bu tür kaynaklardan temizlemek için forumların her gün öldüğü bir sır değil ve "Otomatik Yakalama" aracı bu durumda bize yardımcı olacak.
    Ne de olsa, sık sık örneğin http://www.laptopace.com/index.php yazarak, bu alanın zaten, örneğin goudya olduğunu görüyoruz, ancak orada bir forum yok. Yani, bu cürufu tabandan atmak için soyacağız. :) Sayfanın kaynak kodunu açıyoruz ve orada şu girişi görüyoruz:

    dizüstü bilgisayar.com
    Kapmak için, onu dönüştürüyoruz
    [...]

    Şimdi goudaddi'den gelen tüm "ölüler" bize ismen bilinecek.
    Veritabanını farklı "süresi dolmuş" etki alanlarından temizlemek istiyorsanız, "Otomatik Yakalama" aracı için küçük bir seçim:


    [...]

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

    [...]
    Bu alan adı satılabilir. [...]Bu alan adını satın alın

    [...]<body bgcolor="#ffffff" text="#000000"> </span><br>Liste tam olmaktan çok uzak, ancak milyonlarca dolarlık çöp üslerini birçok kez kullanmamaya yardımcı olacağını düşünüyorum. Şablon oluşturmak, süresi dolan bağlantıyı açmak ve şablon maskesi yapmak zor değil. <br>Aynı otomatik yakalamayı kullanarak, mevcut veritabanlarınızı da inceleyebilir ve kaynaklara göre sıralayabilir, motorlara göre ayırabilirsiniz.Veritabanlarını motorlara göre sıralamak, Hrumer'in tüm özelliklerinden ve özellikle ayarlarından en iyi şekilde yararlanmanızı sağlayacaktır. öğrenme süreci. Ayrıca, çöpleri Hrefer ile değil, çeşitli dosya barındırma hizmetlerinden indirerek toplamayı tercih ederseniz, Autograbbing yardımıyla veritabanlarından çöpleri kaldırabilirsiniz. Bunu yapmak için, forumları seçmek için bir maske yapmanız ve ardından veritabanından yalnızca maske tarafından yakalananları toplamanız veya tam tersi, forum olmayanlar için bir maske yapmanız ve ardından yakalananları silmeniz gerekir. İlk seçenek daha mantıklı ve daha güvenilir çünkü tam olarak ne arayacağımızı biliyoruz. <br>İyi şanslar. <br>PySy. Dar odaklı bir video yaptım (bununla uğraştım, ilk defa yaptım :)), Hrefer'i ev makinemden başlatmama rağmen net hızı pek iyi değil, burada sadece testler için kopyalarım var, o yüzden yapın işin hızı için beni suçlama. :) <br><p><span class="BlWV-EuxoOk"></span></p> <h4>16 yorum:</h4> <p>jack yorumlar...</p><p>Anahtar kelimeleri hangi programla seçtiniz?</p> Serge Glazko'nun yorumları... <p>Tematik kaynaklar toplamam gerekirse Words'te kalemle ve Adwords üzerinden kelimeleri seçiyorum. ama birçok konuda benim için kelimeler seçildi, burada sadece bazı kelimeleri ekleyebilir veya silebilirim, ama otomatik olarak da değil, hepsine bakıyorum.</p> <p>Hemen ana komut dosyası koduyla başlayalım:</p> <p>#!/usr/bin/perl</p><p># hangi-forum.pl komut dosyası <br><span># (c) 2010 Alexandr A Alexeev, http://website/</p><p>katı kullanın;</p><p># yorumlu satırlar - kesinlik için</span><br><span># görev motor istatistiklerini toplamaksa, olduğu gibi bırakın</span><br><span># forumların bir listesini yaparsanız - yorum yapmayın</p><p>$verilerim; <br>$veri .= $_ iken (<> ) ; </p><p># kaç tanesinin alt bilgi bağlantısı olmadan phpBB tarafından desteklendiğini kontrol edin</span><br>"phpbb'yi yazdır <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?phpbb\.com\/?"[^>]*>phpBB/i</span> veya <br><span># $veri =~ /viewforum\.php\?[^""]*f=\d+/i veya</span><br>$veri =~ /phpBB\-SEO/i veya <br>$veri =~ <span>/<link rel="copyright" href="(?:http:\/\/)?phpBB\.com"/i </span>) ; <br>"ipb'yi yazdır <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?invision(?:board|power)\.com\/?[^"]*"[^>]*> [^<]*IP\.Board/i </span> veya <br>$veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?invisionboard\.com\/?"[^>]*>Invision Güç Kartı/i</span> veya <br>$veri =~ <span>/<div id=[""]{0,1}ipbwrapper[""]{0,1}>/i</span> veya <br>$veri =~ <span>/index\.php\?[^""]*showforum=\d+/i</span>) ; <br>yazdır "vbulletin <span>\n"</span><br>if ($veri =~ <span>/Destekleyen:?[^<]+vBulletin[^<]+(?:Version)?/i </span> veya <br>$veri =~ <span>/<meta name="generator" content="vBulletin/i </span> veya <br>$veri =~ <span>/forumdisplay\.php\?[^""]*f=\d+/i</span>) ; <br>yazdır "smf <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?simplemachines\.org\/?"[^>]*>SMF/i tarafından desteklenmektedir</span> veya <br>$veri =~ <span>/index\.php\?[^""]*pano=\d+\.0/i</span>) ; <br>"punbb" yazdır <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:(?:www\.)?punbb\.org|punbb\.informer\.com)\/?"[^>]*> punBB/i</span>) ; #veya <br><span># $veri =~ /viewforum\.php\?[^""]*id=\d+/i);</span><br>yazdır "fluxbb <span>\n"</span><br><span># if($veri =~ /viewtopic\.php\?id=\d+/i veya</span><br>if ( $veri =~ <span>/<a[^>]+href="http:\/\/(?:www\.)fluxbb\.org\/?"[^>]*>FluxBB/i</span>) ; <br>yazdır "exbb <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?exbb\.org\/?"[^>]*>ExBB/i</span>) ; # veya <br><span># $veri =~ /forums\.php\?[^""]*forum=\d+/i);</span><br>yazdır "yabb <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?yabbforum\.com\/?"[^>]*>YaBB/i</span> veya <br>$veri =~ /YaBB\.pl\?[^""]*num=\d+/i ) ; <br>yazdır "dleforum <span>\n"</span><br>if ($veri =~ <span>/\(DLE Forum Tarafından Desteklenmektedir\)<\/title>/i</span> veya <br>$veri =~ <span>/<a[^>]+href="[^"]+(?:http:\/\/(?:www\.)?dle\-files\.ru|act=telif hakkı)[^"]*">DLE Forum<\/a>/i</span>) ; <br>"simge panosu yazdır <span>\n"</span><br>if ($veri =~ <span>/<a[^>]+href="[^"]*http:\/\/(?:www\.)?ikonboard\.com\/?[^"]*"[^>]*>Ikonboard/i</span> veya <br>$veri =~ <span>/<meta name="GENERATOR" content="Ikonboard/i </span> veya <br>$veri =~ /ikonboard\.cgi/i ) ; <br>yazdır "bbpress <span>\n"</span><br>if ($veri =~ <span>/<meta name="generator" content="bbPress/i </span>) ; # veya <br><span># $veri =~ /topic\.php\?id=\d+/i veya</span><br><span># $veri =~ /forum\.php\?id=\d+/i);</span><br>yazdır "flashbb <span>\n"</span><br><span># if($veri =~ /forums\.php\?fid=\d+/i veya</span><br><span># $veri =~ /topic\.php\?fid=\d+/i veya</span><br>if ($veri =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?flashbb\.net\/?"[^>]*>FlashBB/i</span>) ; <br>yazdır "stokes <span>\n"</span><br><span># if($veri =~ /forum\.php\?f=\d+/i veya</span><br>if ($veri =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?stokesit\.com\.au\/?"[^>]*>[^\/]*Stokes IT/i</span>) ; <br>"podyum yazdır <span>\n"</span><br><span># if($veri =~ /topic\.php\?t=\d+/i veya</span><br>if ($veri =~ <span>/<a[^>]+href=[""]?http:\/\/(?:www\.)?sopebox\.com\/?[""]?[^>]*>Podyum/i</span>) ; <br>yazdır "usebb <span>\n"</span><br><span># if($veri =~ /forum\.php\?id=\d+/i veya</span><br>if ($veri =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?usebb\.net\/?"[^>]*>UseBB/i</span>) ; <br>"wrforum" yazdır <span>\n"</span><br><span># if($veri =~ /index\.php\?fid=\d+/i veya</span><br>if ($veri =~ <span>/<a[^>]+href="http:\/\/(?:www\.)?wr\-script\.ru\/?"[^>]*>WR\-Forum/i</span>) ; <br>yazdır "yetanotherforumnet <span>\n"</span><br>if ($data =~ /Yine Başka Bir Forum\.net/i veya <br>$veri =~ <span>/default\.aspx\?g=posts&t=\d+/i</span>) ; </p> <p>Bu ve gönderide bahsedilen diğer komut dosyaları bu arşivde bulunabilir.</p> <p>Senaryo <i>hangi-forum.pl</i> html sayfası kodunu, içinde forum motoru imzalarının olup olmadığını inceler. WordPress ve Joomla'yı tanımlarken benzer bir teknik kullandık, ancak birkaç fark var. İlk olarak, betiğin kendisi sayfa kodunu yüklemez, ancak onu stdin'den veya argüman olarak iletilen bir dosyadan okur. Bu, örneğin wget kullanarak sayfayı bir kez indirmemize ve birden fazla ayrıştırıcımız varsa, birkaç ayrıştırıcı üzerinden çalıştırmamıza izin verir. İkinci olarak, bu komut dosyasında bir imzanın varlığı, motorun %100 bir işaretidir. Geçen sefer, imzanın varlığı sadece ilgili motora ağırlık verdi ve en yüksek ağırlığa sahip motoru “kazandı”. Bu durumda, böyle bir yaklaşımın yalnızca kodu gereksiz yere karmaşık hale getireceğine karar verdim.</p> <p>Senaryoyu test etmek için biraz araştırma yaptım. Birkaç bin forumun bir listesini derledim ve her birini senaryom aracılığıyla çalıştırdım, böylece program aktivasyonlarının yüzdesini ve çeşitli motorların popülaritesini belirledim.</p> <p>Forumların listesini almak için Google ayrıştırıcımı kullandım. <a href="https://bar812.ru/tr/poiskovye-sistemy-rossii-i-lidiruyushchie-poiskoviki-interneta-kakaya.html">arama motoru</a> gibi istekler gönder</p> <p>site:forum.*.ru <br>site:talk.*.ru <br>site:board.*.ru <br>site:smf.*.ru <br>site:phpbb.*.ru <br> ....</p> <p>ve benzeri. Tam sorgu oluşturucu kodunu dosyada bulabilirsiniz. <i>gen-forumsearch-urls.pl</i>. .ru bölgesine ek olarak .su .ua .kz ve .by de kullanıldı. WordPress ve Joomla sitelerinin URL'lerinde bu tür imzalar olmadığı için geçen sefer böyle bir çalışma yapmak zordu. cmsmagazine.ru/catalogue/ gibi kataloglar yeterli örnek boyutu sağlamaz. Drupal'da 600 site nedir?</p> <p>Deneyin sonuçlarının beni hayal kırıklığına uğrattığını itiraf etmeliyim. İncelenen 12.590 siteden yalnızca 7.083 motor başarıyla tanımlandı, yani vakaların yalnızca %56'sında. Belki bazı motorları hesaba katmadım? Bitrix, forumların yarısında yer aldı mı? Yoksa imza aramak için daha fazla zaman harcamalı mıydım? Genel olarak, burada daha fazla araştırmaya ihtiyaç vardır.</p> <p>Başarıyla tanımlanan motorların %56'sı arasında, beklendiği gibi IPB (%31), phpBB (%26,6) ve vBulletin (%26,5) en popüler olanlardı.</p> <p>Bunları SMF (%5,8) ve DLEForum (%5,3) yakından takip etmektedir. En sevdiğim punBB sadece 6. sıradaydı (%1.64). Bu rakamlara kesinlikle güvenmeyi tavsiye etmem (Runet'teki her üçüncü forumun IPB üzerinde çalıştığını söylüyorlar), ancak elbette bazı sonuçlar çıkarılabilir.</p> <p>Örneğin, bir forum motorunda bir site yapmayı ve forumu değiştirmeyi planlıyorsanız, örneğin haftada bir otomatik para çekme ile kullanıcılara her mesaj için 0,01$ ödeyin, o zaman en popüler üç motordan birini seçmelisiniz. . Forum ne kadar popüler olursa, bu konuda bilgili bir programcı bulma olasılığı o kadar artar.</p> <p>Motorda önemli bir değişiklik beklenmiyorsa, SMF veya punBB gibi daha az popüler bir motor seçmek mantıklı olabilir. Bu sayıyı azaltacaktır <a href="https://bar812.ru/tr/hakerskaya-ataka-tp-link-kak-proverit-router-na-nalichie-virusov.html">hacker saldırıları</a> forumunuza ve otomatik olarak gönderilen spam miktarına.</p> <p>Forumları aramak / tanımlamak için komut dosyaları da birden fazla bulabilir <a href="https://bar812.ru/tr/kak-primenit-ekshn-k-gruppe-fotografii-paketnaya-obrabotka-fotografii-v.html">pratik kullanım</a>. Şahsen aklıma gelen ilk şey, belirlenen forumları TCI'ye göre sıralamak ve sitelerinden birine bağlantı içeren gönderileri ilk yüze yerleştirmek oldu. Ancak yüzlerce forum dofollow bağlantısı TIC'yi hiçbir şekilde etkilemedi (2 güncelleme geçti), bu yüzden geçişlerle ilgilenmiyorsanız burada zaman kaybetmemek daha iyidir.</p> <p>Betiklerin adlandırılmış kullanımının tek kullanımdan uzak olduğu açıktır. Bunları başka nasıl kullanabileceğinizi kolayca anlayabileceğinizi düşünüyorum.</p> <p>Merhaba, blog sitesinin sevgili okuyucuları. Bu nedenle, bununla ilgili bir gönderide başladığımız SMF adlı bir forum motoru kurma konusuna devam ediyoruz. Orada, İngilizce arayüzünden çeviri açısından henüz forumu Rusça yapmadık. Şu anda pek prezentabl görünmüyor, ancak Ruslaştırmadan (henüz yapılmadıysa) ve uygun bölümlerin oluşturulmasından sonra görünümü önemli ölçüde iyileşecek.</p><p>Bugün temaları ele alacağız ve onu Rusça yapacağız, ayrıca her iki motorla (hem Jumla hem de SMF) çalışabilen JFusion bileşenini kuracağız, bu da iki ve sadece bir kayıt formu için ortak bir kullanıcı tabanına sahip olmamızı sağlayacak. ve giriş yapın.</p><h2>Rusça dil paketinin temaları ve kurulumu</h2><p>Simple Machines Forum motoru, konuları değiştirme yeteneğini destekler ve bunlar hem bir bütün olarak tüm forum için hem de özellikle bireysel bölümleri için değiştirilebilir. Şahsen, varsayılan temayı kullandım, ancak üzerinde birçok manuel değişiklik yaptım. Özellikle arka planı, bazı öğelerin renk şemalarını değiştirdim, bir flash saat, bir radyo ve çok daha fazlasını ekledim, bu bölümdeki sonraki yazılarda bahsedeceğim.</p><p>Forumu oluştururken neden ek temalardan hiçbirini kullanmadım? Şey, muhtemelen tamamen tembelliğimle ilgili. Hayır, bunun yapılabileceği birçok yer olduğu için yeni temalar aramak ve indirmek için çok tembel değildim. Tembelliğim başka yerde yatıyor.</p><p>Gerçek şu ki, yeteneklerini genişletmek için tasarlanmış bu motor için tüm mod çeşitleri, özellikle varsayılan temaya odaklanmıştır. Açıklarım. Varsayılan bir temanız varsa, o veya bu modun SMF'ye eklenmesi birkaç saniye sürer ve kural olarak kodun manuel olarak düzenlenmesini gerektirmez.</p><p>Varsayılan tema dışında bir tasarım temasına mod yüklenmesi durumunda, dedikleri gibi, tüm ham detayları bir dosya ile işlemek gerekecektir. Başka bir deyişle, yapmanız gerekecek <a href="https://bar812.ru/tr/kak-stavit-shablony-osnovy-photoshop-sozdanie-besshovnoi-zalivki-pattern-dlya.html">FileZilla'yı kullanma</a>(indirin ve yapılandırın, siteye FTP üzerinden erişebilir ve forum motorunuzun dosyalarını düzenlemek için açabilirsiniz. <a href="https://bar812.ru/tr/skyrim-launcher-ne-vidit-faily-launcher-skairim-ne-vidit-mody-kak-reshit.html">bu mod</a> değişiklik yapar.</p><p>sonra ara <a href="https://bar812.ru/tr/zachem-nuzhen-validnyi-kod-i-kak-ustranit-oshibki-validacii-url-adresa-v.html">Doğru yer</a> ve gerekli işlemleri gerçekleştirin: ya kodu değiştirin ya da silin ya da ihtiyacınız olan parçadan önce veya sonra bir kod parçası ekleyin. Değişiklik yapılması gereken yaklaşık bir düzine dosya olabileceği düşünüldüğünde, bunun ne kadar zahmetli olacağı tahmin edilebilir. Bu durumda çok dikkatli olmanız ve hata yapmamanız gerekir, aksi takdirde forum hiç açılmayabilir.</p><p>Yukarıda listelenen varsayılan olmayan bir tema kullanmanın tüm sorunları sizi korkutmuyorsa, buradan indirebilirsiniz. Oradaki konular bölümlere ayrılmıştır (minimalizm, klasiğe yakın, modern vb.) ve her biri için ekran görüntüsünü adresinde görebilirsiniz. <a href="https://bar812.ru/tr/kak-sdelat-polnoekrannyi-vyiti-na-polnyi-ekran-kak-nastroit.html">Tam ekran</a>. Bu aynı temaların nasıl kurulacağını biraz sonra anlatacağım.</p><p>Bu çalışmanın ilk bölümünde açıklandığı gibi, motor dosyalarını barındırmaya yükleme aşamasında forumu Ruslaştırmadıysanız (makalenin en başındaki bağlantıya bakın), şimdi yapabilirsiniz. Rusça bu sayfadan önceden indirilmiştir <a href="https://bar812.ru/tr/posylaet-index-php-topic-powered-by-smf-temy-oformleniya-i-rusifikaciya-foruma-smf-a-tak-zhe.html">dil paketi</a>İstediğiniz ile, paketi açmanız ve ardından Temalar klasörünü kopyalamanız gerekir. <a href="https://bar812.ru/tr/html-absolyutnye-i-otnositelnye-ssylki-sozdanie-ssylki-otnositelno.html">kök klasör</a> aynı ada sahip bir dizin zaten var.</p><p>Kopyalama tamamlandıktan sonra, yöneticinin kullanıcı adı ve şifresini kullanarak foruma gitmeniz gerekir. Üst menüden "Yönetici"yi seçin ve ardından sol sütundan "Sunucu Ayarları"na tıklayın.</p><p>Açılan pencerede "Varsayılan Forum Dili" öğesini bulun ve açılır listeden Rusça dilini seçin ve ardından sayfanın altındaki "Kaydet" düğmesine tıklayın.</p><p><img src='https://i1.wp.com/ktonanovenkogo.ru/image/16.092.png' width="100%" loading=lazy loading=lazy></p><p>İşte bu, şimdi konferansınız tamamen Rusça.</p><h3>Rus dilini desteklemeyen modları kurarken sorunları çözme</h3><p>Lütfen gelecekte SMF'ye Rusça çevirisi olmayan modlar eklerken, bazen yönetici panelinde mod ayarlarının görüntülenmesinde sorun yaşayabileceğinizi unutmayın. Aslında, yönetici panelindeki bu aynı ayarlar basitçe görünmeyecektir, çünkü. onlar için hiçbir Ruslaştırma dosyası olmayacak. Bu nedenle, bu sorunu çözmek için iki seçeneğiniz olacaktır.</p><p>İlk yol, tüm forum için İngilizce'ye geçmektir. Bu nasıl yapılabilir, yukarıda birkaç paragraf görebilirsiniz. Buna göre bu ayarlar ile gerekli işlemleri yaptıktan sonra tekrar Rusçaya dönmeniz gerekecektir.</p><p>İkinci yöntem daha karmaşıktır, ancak yalnızca etkinleştirildiğinde değil, yönetici panelinde yüklü modların ayarlarını her zaman görmemize izin verecektir. <a href="https://bar812.ru/tr/trikolor-tv-akcii-po-oplate-akcii-trikolor-tv-besplatnyh-uroka.html">İngilizce dili</a>. Bu nokta üzerinde bu kadar ayrıntılı duruyorum çünkü birisinin bir mod yüklediği ve ayarlarını kendi panosunun admin panelinde bulamaması çok yaygın bir sorudur.</p><p>Yani ikinci yol, yeni eklenen modlar için Russification dosyalarına çeviri satırları eklemektir. Hangi Ruslaştırma dosyalarının değiştirilmesi gerektiğini ve nereden alınacağını nasıl belirleyeceğimi daha sonra anlatacağım. Bu arada geçici olarak ilk yöntemi kullanabilirsiniz.</p><h2>Site ve forumu entegre etmek için JFusion'ı yükleme</h2><p>İlk önce JFusion ve Russification'ı indirmeniz gerekecek. Joomla yönetici paneline girdikten sonra standart eylemler gerçekleştiriyoruz: <a href="https://bar812.ru/tr/fiksirovannoe-verhnee-menyu-i-plavayushchii-saidbar-v-wordpress.html">üst menü</a> yönetici paneli öğeleri "Uzantılar" - "Yükle / Kaldır" - "Paket dosyası yükle" - "Gözat" düğmesi - bilgisayarımızda jfusion_package.zip bileşeni olan dosyayı buluyoruz - "Dosya yükle ve Yükle" düğmesine tıklayın >".</p><p>Bundan sonra, bileşenin başarıyla kurulduğunu bildiren bir pencere görüntülenir. Sorunlar ortaya çıkarsa, hemen yukarıdaki bağlantıdan bazılarını çözme seçeneklerine aşina olabilirsiniz.</p><p>Şimdi sıra, bileşenin kendisi ile aynı şekilde eklenen Ruslaştırmaya geldi. Şunlar. eylem sırasını tekrarlayın: "Uzantılar" - "Yükle / Kaldır" - "Paket dosyası yükle" - "Gözat" düğmesi - bilgisayarınızda JFusion Russification dosyasını bulun - "Dosya Yükle ve Yükle" düğmesine tıklayın. Şimdi "Bileşenler" - "JFusion" yolundaki ayarlara gidebilir ve Russification'ın başarıyla eklendiğinden ve çalıştığından emin olabiliriz.</p><p><img src='https://i1.wp.com/ktonanovenkogo.ru/image/16.093.png' width="100%" loading=lazy loading=lazy></p> <p>Sana iyi şanslar! Yakında blog sayfaları sitesinde görüşürüz</p><h3></h3><p>ilginizi çekebilir</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>Fusion için JFusion'ı Yapılandırma <a href="https://bar812.ru/tr/prigotovil-index-php-topic-powered-by-smf-temy-oformleniya-i-rusifikaciya.html">Forum SMF'si</a> ve Joomla sitesi</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>Sitedeki forumdan mesajları görüntülemek ve Joomla'ya dönmek için SMF'de bir düğme oluşturmak için JFusion modülleri</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>Foruma girmek ve kullanıcı kaydını SMF'den siteye aktarmak için Joomla'da bir menü öğesi oluşturma</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 Forum Kurulumu - Joomla 1.5 ve Simple Machines Forum Entegrasyonu Kullanımı <a href="https://bar812.ru/tr/gordostyu-index-php-topic-powered-by-smf-temy-oformleniya-i-rusifikaciya-foruma-smf-a-tak-zhe.html">JFusion bileşeni</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>Joomla için Uzantılar - nedir ve Joomla için bileşenler, modüller ve eklentiler nereden indirilir, nasıl kurulur ve kaldırılır</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>Joomla'da bloglar, kataloglar ve portallar oluşturmak için K2 bileşeni - özellikler, kurulum ve Rusçalaştırma</span> <span>Joomla için Fotoğraf Galerisi - Bölüm 3 - Phoca Galerisi bileşenini kullanarak Joomla 1.5'te galeriler oluşturma - kategori ekleme ve fotoğraf galerisine resim yükleme</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 - Joomla'da CNC (SEF) bağlantılarını ve Başlığı ayarlama ve bu uzantıyı kullanarak 404 hata sayfası oluşturma</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 (eski JoomlaPack) - Joomla'da bir sitenin yedeğini oluşturma ve geri yükleme <a href="https://bar812.ru/tr/mozhno-li-ustanavlivat-windows-10-sposoby-besplatnogo-poluchenie-licenzii.html">destek olmak</a> iki tıklamayla</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. Kompleks hakkında. Programlar. Ütü. İnternet. pencereler</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="Editör" class="tdw-tab tdc-tab-active" href="#" data-tab-content="tdw-tab-editor">Canlı CSS ile düzenleyin</a> <div class="tdw-less-info" title="CSS ve LESS'inizde hatalar tespit edildiğinde bu kırmızı olacaktır."></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">Kaydetmek</a> <div class="tdw-more-info-text">CSS VEYA LESS yazın ve kaydet'e basın. Otomatik tamamlama için 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>