Smf tarafından desteklenen dizin php konusuna ihtiyacım var. Forum motorunun otomatik algılanması. Rusça'yı desteklemeyen modları kurarken sorunları çözme

Herkes Joomla olmadan yaşayamayacağımı biliyor, ancak bence bileşenlerde iyi bir forum yok. Bu yüzden forum motorlarıyla çalışıyorum. Yakın zamanda kullanmaya başladığım yenilerden biri, umarım bazı yardımcı materyallerle Yeni Bir SMF Kategorisi Başlatmak. Küçük başlıyoruz ve yeni başlayan biri olarak çok faydalı.

Arama motoru optimizasyonunda ilk adımlar Simple Machines Forum: telif hakkı ve harici bağlantıları kaldırın

Hemen bir rezervasyon yapacağım, sadece smf 2 ile çalışıyorum ve bu makale özellikle ücretsiz forum motorunun bu versiyonuna 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ı siliyoruz ve 4'e kadar, formun 4 harici linkine dikkat edin " SMF 2.0.2 | Basit Makineler | SMF © 2011 | XHTML"! Bunun 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 dış bağlantılar tarafından görüntülenen kod (yaklaşık 330 satır) bulunur. Bu nedenle, siliyoruz: "

  • ", theme_copyright(),"
  • " ve "
  • ", $ txt [" xhtml "],"
  • ". Her şey çok basit ve kolay. Sonraki yayınlarda, SMF'deki forumların tanıtımı ve optimizasyonu hakkında yeni materyaller bekleyin /

    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 çok şık görünmüyor, ancak Ruslaştırmadan (henüz üretilmediyse) ve ilgili bölümlerin oluşturulmasından sonra görünümü önemli ölçüde iyileşecek.

    Bugün temaları ele alacağız ve onu Rusça yapacağız, ayrıca her iki motorla (hem Joomla hem de SMF) çalışabilen JFusion bileşenini kuracağız, bu da iki kişilik ortak bir kullanıcı tabanına ve yalnızca bir biçimine sahip olmamızı sağlayacak. kayıt ve giriş.

    Rusça dil paketinin temaları ve kurulumu

    Simple Machines Forum motoru, temaları değiştirme yeteneğini destekler, ayrıca bunlar hem bir bütün olarak tüm forum için hem de özellikle kendi bölümleri için değiştirilebilir. Şahsen, varsayılan dış görünümü kullandım, ancak üzerinde birkaç manuel değişiklik yaptım. Özellikle arka planı, bazı öğelerin renk şemalarını değiştirdim, flaş, radyo ve çok daha fazlasına bir saat ekledim, bu bölümde sonraki yazılarda bahsedeceğim.

    Forumu oluştururken neden ek görünümlerden hiçbirini kullanmadım? Eh, burada, muhtemelen, hepsi benim 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.

    Gerçek şu ki, yeteneklerini genişletmek için tasarlanan bu motor için tüm mod çeşitleri varsayılan temaya odaklanıyor. Açıklamama izin ver. Varsayılan bir temanız varsa, SMF'ye bir veya başka bir mod eklemek birkaç saniye sürer ve kural olarak kodun manuel olarak düzenlenmesini gerektirmez.

    Varsayılandan farklı bir tasarım temasına bir mod yüklemeniz durumunda, dedikleri gibi, işlenmemiş tüm parçaları bir dosya ile işlemeniz gerekir. Başka bir deyişle, FileZilla'yı kullanmanız gerekecek (siteye FTP üzerinden erişmek için indirip yapılandırabilir ve bu modun değişiklik yaptığı forum motorunuzun dosyalarını düzenleme için açabilirsiniz.

    Ardından kodda doğru yeri arayın 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ştirilmesi gereken bir düzine kadar dosya olabileceğini düşünürsek, bunun ne kadar zahmetli olacağını tahmin edebilirsiniz. Bu durumda çok dikkatli olmanız ve hata yapmamanız gerekir, aksi takdirde forum hiç açılmayabilir.

    Varsayılan olmayan bir tema kullanmanın yukarıdaki sorunlarının tümü sizi korkutmuyorsa, buradan indirebilirsiniz. Temalar bölümlere göre (minimalizm, klasiğe yakın, modern vb.) sıralanır ve her biri için tam ekran ekran görüntüsünü görebilirsiniz. Bu temaları nasıl kuracağınızı biraz sonra anlatacağım.

    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. Bu sayfadan daha önce indirilen Rusça dil paketini, paketinden çıkarmanız ve ardından Temalar klasörünü zaten aynı ada sahip bir dizinin bulunduğu kök klasöre kopyalamanız gerekir.

    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ütundaki "Sunucu Ayarları"na tıklayın.

    Açılan pencerede "Varsayılan Forum Dili" öğesini buluyoruz ve açılır listeden Rusça dilini seçiyoruz ve ardından sayfanın altındaki "Kaydet" düğmesine tıklıyoruz.

    İşte bu, şimdi konferansınız tamamen Rusça.

    Rusça'yı desteklemeyen modları kurarken sorunları çözme

    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 ayarlar basitçe görünmeyecek, tk. onlar için hiçbir Ruslaştırma dosyası olmayacak. Bu nedenle, bu sorunu çözmek için iki seçeneğiniz olacaktır.

    İ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.

    İkinci yöntem daha karmaşıktır, ancak yalnızca İngilizce etkinleştirildiğinde değil, yönetici panelinde yüklü modların ayarlarını her zaman görmemize izin verecektir. Bu nokta üzerinde bu kadar ayrıntılı duruyorum çünkü birisinin bir mod yüklediği ve ayarlarını konferanslarının admin panelinde bulamadığı sorusu çok yaygın.

    Yani ikinci yol, yeni eklenen modlar için Russification dosyalarına çeviri dizeleri eklemektir. Hangi Ruslaştırma dosyalarının değiştirilmesi gerektiğini ve nereden alınacağını nasıl belirleyeceğimi size daha sonra anlatacağım. Şimdilik geçici olarak ilk yöntemi kullanabilirsiniz.

    Site ve Forum Entegrasyonu için JFusion Kurulumu

    İlk önce JFusion ve Russification'ı indirmeniz gerekecek. Joomla yönetici paneline girerek standart eylemleri gerçekleştiriyoruz: yönetici panelinin üst menüsünden "Uzantılar" - "Yükle / Kaldır" - "Paket dosyasını indir" - "Gözat" düğmesi - öğelerini seçin bilgisayarınızı jfusion_package.zip bileşenine sahip dosya - " Dosyayı indir ve yükle> " üzerine tıklayın.

    Bundan sonra, bileşenin başarıyla kurulduğunu bildiren bir pencere açılır. Sorunlarınız varsa, hemen yukarıda verilen bağlantıdan bazılarını çözme seçeneklerine aşina olabilirsiniz.

    Şimdi sıra, bileşenin kendisi ile aynı şekilde eklenen Ruslaştırmaya geldi. Onlar. eylem sırasını tekrarlıyoruz: "Uzantılar" - "Yükle / Kaldır" - "Paket dosyasını indir" - "Gözat" düğmesi - bilgisayarınızda JFusion russification dosyasını bulun - "Dosyayı indir ve Yükle" ye tıklayın buton. Şimdi "Components" - "JFusion" yolu boyunca ayarlara gidebilir ve Russification'ın başarıyla eklendiğinden ve çalıştığından emin olabiliriz.

    Sana iyi şanslar! Yakında blog sitesinin sayfalarında görüşürüz

    ilginizi çekebilir

    JFusion'ı SMF Forum ve Joomla Sitesini Birleştirecek Şekilde Yapılandırma
    Sitedeki forumdan mesajları görüntülemek ve Jumla'ya dönmek için SMF'de bir düğme oluşturmak için JFusion modülleri
    Foruma girmek için Joomla'da bir menü öğesi oluşturma ve kullanıcı kaydını SMF'den siteye aktarma
    SMF Forum Kurulumu - JFusion Bileşenini Kullanarak Joomla 1.5 ve Simple Machines Forum Entegrasyonu
    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
    Joomla'da bloglar, kataloglar ve portallar oluşturmak için K2 Bileşeni - özellikler, kurulum ve ruslaştırma Joomla için Fotoğraf Galerisi - Bölüm 3 - Phoca Galeri bileşenini kullanarak Joomla 1.5'te galeriler oluşturma - kategoriler ekleme ve fotoğraf galerisine resim yükleme
    ARTIO JoomSEF - Joomla'da CNC (SEF) bağlantıları ve Başlık kurma ve bu uzantıyı kullanarak 404 hata sayfası oluşturma
    Akeeba Backup (eski JoomlaPack) - Joomla'da bir sitenin yedeğini oluşturun ve iki tıklamayla bir yedekten geri yükleyin

    Hemen ana komut dosyası koduyla başlayalım:

    #! / usr / bin / perl

    # hangi-forum.pl komut dosyası
    # (c) 2010 Alexandr A Alexeev, http: // site /

    katı kullanın;

    # satırları yorumladı - kesinlik için
    # görev motor istatistiklerini toplamaksa, olduğu gibi bırakın
    # forumların bir listesini yaparsanız - yorum yapmayın

    $ verilerim;
    $ veri. = $ _ while (<> ) ;

    # altbilgide bağlantı olmadan ne kadar Powered by phpBB olduğunu kontrol edin
    "phpbb'yi yazdır \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? phpbb \ .com \ /? "[^>] *> phpBB / i veya
    # $ data = ~ /viewforum\.php\?†^""")*f=\d+/i veya
    $ veri = ~ / phpBB \ -SEO / i veya
    $ veri = ~ /) ;
    "ipb'yi yazdır \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? invision (?: pano | güç) \. com \ /? [^ "] *" [^>] *> [^<]*IP\.Board/i veya
    $ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? invisionboard \ .com \ /? "[^>] *> Invision Güç Kartı / i veya
    $ veri = ~ /

    / ben veya
    $ veri = ~ /index\.php\?†^""†*showforum=\d+/i) ;
    yazdır "vbulletin \ n "
    if ($ veri = ~ / Destekleyen:? [^<]+vBulletin[^<]+(?:Version)?/i veya
    $ veri = ~ /) ;
    yazdır "smf \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? simplemachines \ .org \ /? "[^>] *> Destekleyen SMF / i veya
    $ veri = ~ /index\.php\?†^"""*pano=\d+\.0/i) ;
    "punbb" yazdır \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (? :( ?: www \.)? punbb \ .org | punbb \ .informer \ .com) \ /? "[^>] *> punBB / ben); #veya
    # $ data = ~ /viewforum\.php\?†^"""*id=\d+/i);
    yazdır "fluxbb \ n "
    # if ($ data = ~ /viewtopic\.php\?id=\d+/i veya
    if ($ veri = ~ /] + href = "http: \ / \ / (?: www \.) fluxbb \ .org \ /?" [^>] *> FluxBB / i) ;
    yazdır "exbb \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? exbb \ .org \ /? "[^>] *> ExBB / i); # veya
    # $ data = ~ /forums\.php\?†^"""*forum=\d+/i);
    yazdır "yabb \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? yabbforum \ .com \ /? "[^>] *> YaBB / i veya
    $ data = ~ /YaBB\.pl\?†^"""**num=\d+/i);
    yazdır "dleforum \ n "
    if ($ veri = ~ / \ (DLE Forum Tarafından Desteklenir \)<\/title>/ ben veya
    $ veri = ~ /] + href = "[^"] + (?: http: \ / \ / (?: www \.)? dle \ -files \ .ru | act = telif hakkı) [^ "] *"> DLE Forum<\/a>/ ben) ;
    "ikonboard yazdır \ n "
    if ($ veri = ~ /] + href = "[^"] * http: \ / \ / (?: www \.)? ikonboard \ .com \ /? [^ "] *" [^>] *> Ikonboard / i veya
    $ veri = ~ /\ n "
    if ($ veri = ~ /\ n "
    # if ($ data = ~ /forums\.php\?fid=\d+/i veya
    # $ data = ~ /topic\.php\?fid=\d+/i veya
    if ($ veri = ~ /] + href = "http: \ / \ / (?: www \.)? flashbb \ .net \ /?" [^>] *> FlashBB / i) ;
    yazdır "stokes \ n "
    # if ($ data = ~ /forum\.php\?f=\d+/i veya
    if ($ veri = ~ /] + href = "http: \ / \ / (?: www \.)? stokesit \ .com \ .au \ /?" [^>] *> [^ \ /] * Stokes IT / i) ;
    "podyum yazdır \ n "
    # if ($ data = ~ /topic\.php\?t=\d+/i veya
    if ($ veri = ~ /] + href = [""]? http: \ / \ / (?: www \.)? sopebox \ .com \ /? [""]? [^>] *> Podyum / i) ;
    yazdır "usebb \ n "
    # if ($ data = ~ /forum\.php\?id=\d+/i veya
    if ($ veri = ~ /] + href = "http: \ / \ / (?: www \.)? usebb \ .net \ /?" [^>] *> UseBB / i) ;
    "wrforum" yazdır \ n "
    # if ($ data = ~ /index\.php\?fid=\d+/i veya
    if ($ veri = ~ /] + href = "http: \ / \ / (?: www \.)? wr \ -script \ .ru \ /?" [^>] *> WR \ -Forum / i) ;
    yazdır "yetanotherforumnet \ n "
    if ($ data = ~ / Yine Başka Bir Forum \ .net / i veya
    $ veri = ~ /default\.aspx\?g=posts&t=\d+/i) ;

    Bu ve gönderide bahsedilen diğer komut dosyaları bu arşivde bulunabilir.

    Senaryo hangi-forum.pl html sayfasının 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 yüklemenize ve birden fazla analizörümüz varsa, birkaç analizör üzerinden çalıştırmanıza olanak tanır. İkinci olarak, bu komut dosyasında bir imzanın varlığı, %100 motorun bir işaretidir. Geçen sefer imzanın varlığı sadece ilgili motora ağırlık verdi ve en yüksek ağırlığa sahip motor "kazandı". Bu durumda, bu yaklaşımın yalnızca kodu gereksiz yere karmaşık hale getireceğine karar verdim.

    Senaryonun nasıl çalıştığını test etmek için biraz araştırma yaptım. Birkaç bin forumun bir listesini yaptım ve her birini betiğimde çalıştırdım, böylece program tetikleyicilerinin yüzdesini ve çeşitli motorların popülaritesini belirledim.

    Forumların bir listesini almak için google ayrıştırıcımı kullandım. Arama motoru aşağıdaki gibi istekler gönderdi:

    site: forum *.ru
    site: konuşma *.ru
    site: tahta. *. ru
    site: smf.*.ru
    site: phpbb.*.ru
    ....

    vesaire. Sorgu oluşturucunun tam kodu dosyada bulunabilir. gen-forumsearch-urls.pl... .ru bölgesine ek olarak .su .ua .kz ve.by de kullanılmıştır. WordPress ve Joomla sitelerinin URL'lerinde bu tür imzalar olmadığı için geçen sefer bu araştırmayı yapmak zordu. cmsmagazine.ru/catalogue/ gibi kataloglar yeterli örnek boyutu sağlamaz. 600 Drupal sitesi nedir?

    Kabul etmeliyim ki deneyin sonuçları beni üzdü. İncelenen 12.590 siteden yalnızca 7083'ü motorla başarılı bir şekilde tanımlandı, yani vakaların yalnızca %56'sında. Belki biraz motoru kaçırdım? Bitrix gerçekten forumların yarısında mıydı? Yoksa imza aramak için daha fazla zaman harcamalı mıyım? Genel olarak, burada daha fazla araştırmaya ihtiyaç vardır.

    Başarıyla tanımlanan motorların %56'sı arasında, beklendiği gibi en popüler olanlar IPB (%31), phpBB (%26,6) ve vBulletin (%26,5) idi.

    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üvenmenizi tavsiye etmem (RuNet'teki her üç forumdan birinin IPB üzerinde çalıştığını söylüyorlar), ancak elbette bazı sonuçlar çıkarmak mümkün.

    Örneğin, bir forum motorunda bir web sitesi oluşturmayı 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 dolar ö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.

    Motorda önemli bir değişiklik öngörülmediyse, örneğin SMF veya punBB gibi en popüler motoru seçmemek mantıklı olabilir. Bu, forumunuza yapılan korsan saldırılarının sayısını ve foruma otomatik olarak gönderilen spam miktarını azaltacaktır.

    Forumları aramak / tanımlamak için komut dosyaları da birden fazla pratik uygulamada bulunabilir. Şahsen aklıma gelen ilk şey, belirlenen forumları TCI'ye göre sıralamak ve sitelerinden birine bağlantı içeren ilk yüz gönderiye yerleştirmek oldu. Ancak, yüzlerce forum dofollow bağlantısı TCI'yi hiçbir şekilde etkilemedi (2 güncelleme geçti), bu yüzden geçişlerle ilgilenmiyorsanız burada zaman kaybetmemek daha iyidir.

    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.

    gastroguru 2017