IRCRehberi.Net- Türkiyenin En iyi IRC ve Genel Forum Sitesi  
 sohbet
derya sohbet


XenForo XenForo Dersleri , XenForo Kurulumu , XenForo Forum Dökümanları 'na bu başlık altından ulaşabilirsiniz.

11Beğeni(ler)
  • 4 Post By ExCaLuBuR
  • 1 Post By Sterben
  • 1 Post By ExCaLuBuR
  • 1 Post By WildCat
  • 1 Post By RevivaL
  • 1 Post By ZeyNa
  • 1 Post By She
  • 1 Post By Artist


 
 
Seçenekler Stil
Alt 07 Mart 2021, 01:13   #1
Standart Wordpress'ten, XenForo'ya nasıl geçiş yapılır?

Wordpress'ten, XenForo'ya geçiş sürecini ve tamamlanmasını sizlere detaylı olarak anlatamaya çalışacağım. Öncelikle, konu size ilginç gelebilir. Çünkü Wordpress gibi bir yazılımdan, XenForo gibi bir forum yazılımına geçişten söz ediyoruz.

Bu tür işlemler bugüne kadar ya sıkıntılı olmuştur ya da başarısızlıkla sonuçlanmıştır. Tabii hiç sorun yaşamadan bir tek kayıp bile olmadan geçiş yapanlar da mutlaka vardır. Fakat normal bir CMS sisteminden FORUM sistemine geçiş sürecinde az da olsa mutlaka sorunlar da olabilir.

Wordpress'ten XenForo'ya geçiş sürecinde aracı olarak vBulletin scriptini kullanacağız. Sebeplerini yazımın ilerleyen bölümlerinde anlatacağım.

Şunu da ön hatırlatma olarak belirtmeliyim ki; XenForo'da, Wordpress için URL yönlendirme henüz icra edilmedi.

Yani geçiş sonrası Google'da indexlenen Wordpress linklerini kurtarmak için bir eklenti yapılmadı fakat benim nezdimde bir çözüm yöntemi var. Bu yöntemi anlatması biraz uzun ve karmaşık olduğundan, yazımın sonunda bunu anlatmaya çalışacağım.

İlk olarak sitenizin tam yedeğini alın (FTP + Veritabanı) ve uygun bir yerde saklayın. Ama tekrar söylüyorum Wordpress site yedeğinizi düzgün ve tam aldığınızdan emin olun ki, daha sonra problem olmasın. Çok temiz ve güvenli geçiş için, haydi başlayalım!

Giriş Notu: Karakter problemi yaşamamanız için, Wordpress karakter setini utf-8 şeklinde (utf8 turkish olabilir) değiştirin. Aynı şekilde karşı tabloları da o setten belirleyin.

1- Aynı sunucuda/hostingte herhangi bir FTP ve MySQL yönetiminden yeni bir veritabanı oluşturalım. Hatta FTP oluşturmaya bile gerek yok. Mevcut FTP düzenine vb veya vbulletin diye bir klasör oluşturup orada vBulletin 4 forum kuralım.

Tabii unutmadan, vBulletin CMS ile birlikte kurmamız gerekecek. vBulletin forum kurulumunu sizlere anlatmama gerek yok sanırım. Her zaman nasıl kuruyorsanız, aynen o şekilde vBulletin forum kurulumunu vbulletin klasöründe yapmalısınız. Kurulum bitince vBulletin forumunuz hazır hale geldi.

2- Şimdi ImpEx kurmamız gerekecek. ImpEx klasörünü vbulletin klasörüne (ROOT) yükleyin. Ancak, ImpEx ayarlarını yapmanız gerekecek. ImpEx'in config dosyasında normal ve target pozisyonu var config dosyasına girdiğinizde zaten göreceksiniz.

Normal olan Wordpress veritabanı, target ise vBulletin forumdur. Normal olana Wordpress veritabanı bilgilerini, Target olana da vBulletin forumunuzun veritabanı bilgilerinizi girip kaydedin ve çıkın.

3- Şimdi vBulletin admin paneline girerek, ImpEx bölümünü açın. Çıkan listede Wordpress CMS seçip, hedef olarak da vBulletin CMS belirtin ve devam edin.

Not: Wordpress tablo ön eki wp_ olduğu için, bu ön ekleri kaldırın yani tablo isimleri ön eksiz olsun.

4- Check / Update tables seçeneğini doğrulayın fakat sorun yaşadığınızda veya uyguladıktan sonra şu sorguları çalıştırın;

PHP- Kodu

ALTER TABLE cms_article ADD importcmscontentid INT UNSIGNED NOT NULL DEFAULT '0'

PHP- Kodu

ALTER TABLE cms_node ADD importcmsnodeid INT UNSIGNED NOT NULL DEFAULT '0'

PHP- Kodu

ALTER TABLE cms_nodeinfo ADD importid INT UNSIGNED NOT NULL DEFAULT '0'

Evet bu sorguları da çalıştırdık. Şimdi Wordpress'e kayıtlı olan üyeleri aktaracağız.

5- import the users yaparak Wordpress üyelerinizi vBulletin forumunuza aktarın. Aktarma bittikten sonra kesinlikle başka bir şeyi ellemeyin, herhangi bir ayarla oynamayın.

6- Üst kısımda "database cleanup" linkine tıklayın ve "delete the session" tıklayın. Bunu yaparak Wordpress geçiş sürecindeki üyeleri sorunsuzca aktarmış, tabloları analiz etmiş olacağız.

Not: Wordpress veritabanında tablo ön eklerini kaldırmıştık. Şimdi o ön ekleri yeniden ekleyelim wp_ şeklinde.

7- Aşağıdaki tabloları indirin;

HTML-Kodu

wp_posts
wp_comments
Bu tabloları indirdikten sonra, vBulletin veritabanınıza yükleyin.

8- Şimdi konuları ve yorumları manuel olarak aktaracağız. Eğer çok büyük bir Wordpress siteniz varsa, sunucu biraz zorlanabilir. Sabırla bekleyiniz. Bitiminde göreceksiniz. Şimdi aşağıdaki sorguyu, vBulletin veritabanınızda çalıştırın;

PHP- Kodu

INSERT INTO thread (threadidtitleforumidopenpostuseriddatelinevisible)
    
SELECT IDpost_title21, (SELECT userid FROM user WHERE importuserid wp_posts.post_author AND wp_posts.post_author 0), UNIX_TIMESTAMP(post_date), 1
    FROM wp_posts
    WHERE post_type 
'post';

INSERT INTO post (postidthreadidusernameuseriddatelinepagetextvisible)
    
SELECT comment_IDcomment_post_IDcomment_author, (SELECT userid FROM user WHERE importuserid wp_comments.user_id AND wp_comments.user_id 0), UNIX_TIMESTAMP(comment_date), comment_content1
    FROM wp_comments
;

INSERT INTO post (threadidusernameuseriddatelinepagetextvisible)
    
SELECT ID'', (SELECT userid FROM user WHERE importuserid wp_posts.post_author AND wp_posts.post_author 0), UNIX_TIMESTAMP(post_date), post_content1
    FROM wp_posts
    WHERE post_type 
'post'

Evet, Wordpress'teki tüm konuları ve yorumları da aktarmış olduk. Şimdi vBulletin admin panele girerek sayaçları tek tek güncelleyin.

9- Wordpress'ten aktarılan üyeler, vBulletin'de "Imported Users" şeklinde bir gruba aktarılırlar. Bu üyelerin hepsini Registered Users yani kayıtlı üyeler grubuna taşıyın. Imported Admin hesabını da, 1 numaraları ID'li olan admin hesabı ile birleştirin ve tüm sayaçları yeniden güncelleyin.

Evet, şimdi Wordpress sitemizi vBulletin foruma komple taşımış olduk. Peki şimdi ne yapacağız? Tabii ki XenForo'ya geçeceğiz.

Peki vBulletin'den XenForo'ya nasıl geçilir?

1- vBulletin forumunuzda banladığınız üyeleri ve e-posta ile onay yapmayan üyeleri komple silin. Ben silin diyorum çünkü yeni yazılıma geçince bu üyeleri de geçirmenin hiçbir anlamı yok. Tamamen, başlı başına yer kalabalığı yapmaktan başka hiçbir şeye yaramazlar. Ama gene de siz bilirsiniz. Ben silin diyorum.

Not: Banladığınız üyeleri silmezseniz eğer, temizlik açısından şu sorguyu çalıştırın;

PHP- Kodu

UPDATE usertextfield LEFT JOIN user ON user.userid usertextfield.userid SET signature '' WHERE user.usergroupid 

Üye grubu için 8 yazdım. Forumunuzda banlı üyelerin grub id'si kaçsa, onu yazarsınız artık. Bu sayede banlı üyelerin imzalarını silmiş olacağız.

2- Sitenizde geri dönüşüm kutusu varsa, çöpleşmiş ve işe yaramayan, en azından süresi 7-8 ay veya 1 seneyi geçmiş konular varsa onları silin. Silin diyorum çünkü az önce de belirttiğim gibi hiçbir şeye yaramadıkları gibi, onları da aktarmanın hiçbir faydası yok. Ama gene de siz bilirsiniz. Ben silin diyorum.

3- Zaten yedek almıştınız. Şimdi şu sorguyu vBulletin forumunuzun kurulu olduğu PhpMyAdmin'den çalıştırın;

PHP- Kodu

UPDATE post SET title '' 

Not: Eğer çok büyük bir siteniz varsa, bu sorgu çalışınca sunucu epey zorlanacaktır fakat sabırla bekleyin tamamlanmadan bir işlem yapmayın. Bu sorgu nedir kısaca değinirsek, mesaj başlarında RE: Konu adı diye bir yer var ya, işte orayı kaldıracaktır. Çünkü bu sistem XenForo'da gereksizdir. Bunu kesinlikle yapmalısınız zaten SEO açısından da çok zararlı. Hem title'da var, hem Navbar'da var hem de böyle her mesajda olması SEO için kötüdür. İşte XenForo'da bu yok.

4- vBulletin sitenizde, sildiğiniz bir üye varsa ve o üyeye ait konu ve mesajlarda herhangi bir isim geçmiyorsa, XenForo bunları aktarmaz. Yani aktarım işlemleri eksik olur. İşte bunu çözmek için şu sorguyu vBulletin forumunuzun kurulu olduğu PhpMyAdmin'den çalıştırın;

PHP- Kodu

UPDATE `threadSET `postusername` = 'Guest' WHERE `thread`.`postusername` ='' 

Not: Bu işlem uzun sürebilir. Guest'i Misafir veya Silinmiş Üye yapabilirsiniz size kalmış. Önemli bir önerim olacak ki, o da bunların hiçbirisiyle uğraşmak istemiyorsanız şu sorguları çalıştırın;

PHP- Kodu

DELETE FROM post WHERE userid 0

PHP- Kodu

DELETE FROM visitormessage WHERE userid 0

Bu sorgular silinmiş üyelerin tüm mesajlarını forumdan kaldıracaktır. Fakat bu işlemi de yapmak istemezseniz şu sorguyu çalıştırın;

PHP- Kodu

UPDATE usertextfield LEFT JOIN user ON user.userid usertextfield.userid SET signature '' WHERE user.posts 0

Bu sorgu silinmiş üyelerin imzalarını veritabanından temizler ve böylelikle yer açılır DB rahatlar.

5- Geri dönüşümlü olarak sildiğiniz tüm konu ve mesajları komple silin. Zaten miladı dolmuştur bunların. Boş yere taşımaya hiç gerek yok. Ben bu işlemi yapmanızı öneririm. Ama yok, "olsun sakıncası yok geçireyim onları" derseniz 5. adımı yani bu kısımı atlayın bu konuda. Fakat yok "tamam bunu da yapayım iyi olur" derseniz, şu sorguları çalıştırın;

PHP- Kodu

DELETE FROM post WHERE visible AND parentid 

PHP- Kodu

truncate deletionlog

Not: Bu sorgu çalışırken sunucuya yük binecektir. Dikkatli olmalısınız.

6- Özel mesajları taşımak istemiyorsanız şu sorguları tek tek çalıştırın;

PHP- Kodu

DELETE FROM pm

PHP- Kodu

DELETE FROM pmreceipt

PHP- Kodu

DELETE FROM pmtext

PHP- Kodu

UPDATE user SET pmtotal 0pmunread 0

PHP- Kodu

TRUNCATE pm

PHP- Kodu

TRUNCATE pmtext

Not: Özel mesajları taşımak istiyorsanız, bu adımı atlayın. Fakat ben silmenizi öneriyorum çünkü XenForo'da özel mesaj sistemi live pm gibi bir sistem olduğu için eski vBulletin özel mesajları gereksiz kalacaktır. Yani sorun yok kalmasında ama silinse daha iyi diyorum.

7- Fazla üye grupları varsa, silin. Mesela yok deneme moderatör yok yardımcı moderatör yok bilmem ne üyelikler vb. gibi fazla gruplar varsa silmenizi öneriyorum. "Hayır kalsın sakınca yok." diyorsanız bu adımı atlayın.

8- IP kayıtlarını silin. Ben silmenizi öneriyorum yeni geçişte onları da yani yüzlerce ip kaydını da taşımanın hiçbir anlamı yok bence. "Hayır kalsın sorun yok." diyorsanız bu adımı atlayın ama silmek istiyorsanız aşağıdaki sorguları çalıştırın;

vBulletin 3.x versiyon kullananlar şu sorguları çalıştırsın;

PHP- Kodu

UPDATE user SET ipaddress=''

PHP- Kodu

UPDATE post SET ipaddress=''

vBulletin 4.x versiyon kullananlar da şu sorguları çalıştırsın;

PHP- Kodu

truncate ipdata

PHP- Kodu

UPDATE user SET ipaddress=''

PHP- Kodu

UPDATE post SET ipaddress=''

Not: Büyük bir siteniz varsa sunucunuzu biraz yavaşlatabilir.

9- Aktif olmayan kategorilerdeki eklentileri silin, yer açılsın ve yeni geçişte onlar da taşınmasın diyorsanız, şu sorguyu çalıştırın;

PHP- Kodu

DELETE FROM attachment USING attachmentpostthread WHERE attachment.postid post.postid AND thread.threadid post.threadid AND thread.forumid 

Not: X olan yere kategori id numarası yazın bu sorgu vBulletin 3.x içindir. Hayır gerek yok kalsın diyorsanız bu adımı atlayın.

10- Mesaj düzenleme kayıtlarını silin. Adı üstünde "geçmiş" geçmişte kalmış olmuş bitmiş, yeni geçişte onları da boş yere taşımanın anlamı yok diyorsanız şu sorguları çalıştırın;

PHP- Kodu

truncate editlog

PHP- Kodu

truncate postlog

PHP- Kodu

truncate postedithistory

11- Geçiş öncesi performansı arttırmak açısından gereksiz tabloları şu sorgularla boşaltın;

PHP- Kodu

truncate tag;
truncate session;
truncate adminlog;
truncate autosave;
truncate tagsearch;
truncate searchcore;
truncate tagcontent;
truncate profilevisitor;
truncate moderatorlog;
truncate externalcache;
truncate templatehistory;
truncate passwordhistory;
truncate searchcore_text

Evet vBulletin forumunuz epey temizlendi ve bir o kadar da yer açıldı, rahatladı. Toplam 11 adımda bu işlemleri halletmiş olduk. Şimdi sıra geldi, taşımaya.

XenForo'yu, vBulletin veritabanınızın olduğu yere de kurabilirsiniz. Çakışma olmaz çünkü XenForo tablo isimleri farklıdır ve xf_ ile başlar. Kurulum esnasında aynı veritabanını kullanabilirsiniz yani. FTP de aynı olabilir. Dosyaları direkt üstüne yazdırın sadece index.php değişir o kadar. Yani bir sıkıntı olmaz çünkü XenForo FTP dosya isimleri de farklı. XenForo kurulumu bittikten sonra, XenForo sitemizin Admin paneline girin.

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Daha sonra Admin panelde ARAÇLAR kısmını açın. Sol menüde en aşağıda "Dış Veri Yükle" yazar, ona tıklayın. Açılan sayfada "Yükleyici Aracı Seçiniz:" bölümünden vBulletin versiyonunu seçin.

Not: Retain imported content IDs hemen altındaki seçenek bunu işaretlemeyin, boş bırakın.

Aktarım arşiv tablosu belirleyin daha sonra lazım olacağı için archived_import_log olarak kalabilir.

Yüklemeyi yapılandır diyerek devam edin. Karşınıza çıkan sonraki bölümde vBulletin kurulu olan veritabanı bilgilerinizi girin.

Daha sonra açılan sayfada sizden bazı dosya yolları istenecek. Avatarlar ve eklentilerin yolu vs. Bunları girdikten sonrasını zaten siz yapacaksınız. Karşınıza her şey çıkacak çünkü.

Google'da indexlenen linkleri kurtarmak:

Eski linkleri vBSEO olsun veya normal vBulletin link yapısı olsun onları da şu şekilde kurtarıyoruz [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...];

Eski YouTube BB Kodları kurtarmak

XenForo'ya geçiş yaptıktan sonra şu sorguları ([YOUTUBE] bb kodu için) çalıştırın;

PHP- Kodu

UPDATE xf_post SET message REPLACE(message'[GECERSIZYOUTUBE]''[media=youtube]');
UPDATE xf_post SET message REPLACE(message'[/GECERSIZYOUTUBE]''[/media]'); 

XenForo'ya geçiş yaptıktan sonra şu sorguları ([YT] bb kodu için) çalıştırın;

PHP- Kodu

UPDATE xf_post SET message REPLACE(message'[YT]''[media=youtube]');
UPDATE xf_post SET message REPLACE(message'[/YT]''[/media]'); 

Hala dönüşümü başarısız YouTube videoları varsa, [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] eklentiyi kuracaksınız;

Böylelikle videoları da dönüştürmüş olacaksınız.

Alıntı:
EfendiBey
________________

06/02/2023 İnsan olan herkesin kalbi acıdı.

Konu ExCaLuBuR tarafından (06 Haziran 2021 Saat 17:24 ) değiştirilmiştir..
 
Alt 07 Mart 2021, 01:22   #2
18-02-2020
Sterben - ait Kullanıcı Resmi (Avatar)

Standart

@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Emeğine sağlık usta.

 
Alt 07 Mart 2021, 01:24   #3
Standart

Alıntı:
SLyther Nickli Üyeden Alıntı Mesajı göster
@[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] Emeğine sağlık usta.
Tşkler , seninde emeğine sağlık.

________________

06/02/2023 İnsan olan herkesin kalbi acıdı.
 
Alt 07 Mart 2021, 03:06   #4
Standart

emegine saglik

________________

No MoRe DramA
 
Alt 07 Mart 2021, 09:10   #5
IRCRehberi
RevivaL - ait Kullanıcı Resmi (Avatar)

Standart

Emeğine Sağlık kardeşim

 
Alt 07 Mart 2021, 09:38   #6
Standart

Emeğine sağlık

 
Alt 14 Nisan 2021, 20:49   #7
She
✰ ÖzeL..
She - ait Kullanıcı Resmi (Avatar)

Standart

Paylaşım için teşekkür ederiz @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] sağolasın

________________

~ E & B ~
 
Alt 24 Mayıs 2021, 22:02   #8
Yanlış Bildiğin Yolda; Herkesle yürüyeceğine Doğru Bildiğin Yolda; Tek başına yürü..
Artist - ait Kullanıcı Resmi (Avatar)

Standart

Güzel paylaşımlarınız ve herkesi konu ile alakalı bilgilendirdiğiniz için teşekkür ederiz.

________________

Wordpress'ten, XenForo'ya nasıl geçiş yapılır?
 


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı





Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 02:56.