- Katılım
- 4 Ara 2016
- Mesajlar
- 9,079
- Çözümler
- 1,037
XenForo 2.3 Yenilikleri - Çeşitli değişiklikler
Yayınlanmadan önce, XenForo kılavuzu aracılığıyla tam kurulum sürecini belgeleyeceğiz. Apple'ın "E-postamı gizle" özelliği ile kaydolan kullanıcılar için de ek bir adım gerekiyor.
Etkinleştirildikten sonra, kullanıcılar oturum açabilecek veya ilgili yerdeki Apple düğmesiyle kaydolabilecekler
Bağlı hesaplar için kullanıcıları arama
Hangi kullanıcılarınızın hangi bağlı hesaplara sahip olduğunu merak ettiyseniz, artık bu listeyi doğrudan yönetici kontrol panelinizdeki "Kullanıcı ara" sayfasından çekebilirsiniz.
Aramak istediğiniz belirli bağlı hesap(lar)ı seçmeniz yeterlidir; bu hesapların bağlı olduğu kullanıcıların listesi görüntülenecektir.
IndexNow desteği
XenForo 2.3'te artık IndexNow desteğini etkinleştirebilirsiniz. Bu, Bing, Yandex ve diğerleri tarafından forumunuzda içerik oluşturulduğunda, güncellendiğinde veya silindiğinde onları doğrudan bilgilendirmenize olanak tanıyan yeni bir girişimdir. Bu olaylardan biri gerçekleştiğinde, URL'yi IndexNow'a göndermek için bir iş sıraya alınır. Bu, arama motorları tarafından okunabilecek veya okunamayacak büyük site haritası dosyaları oluşturma ihtiyacını ortadan kaldırır.
Google da dahil olmak üzere arama motorlarının sınırlı desteği nedeniyle, site haritası oluşturma yerinde kalır ve değişmeden kalır, ancak IndexNow şimdi veya gelecekte destekleyen arama motorları için kullanılabilir.
Genel olarak kuyruğa alınmış ve yeniden denenebilir işler
XenForo 2.3 ile başlayarak, mevcut iş sistemi, genel bir kuyruk sistemi olarak kullanılmasına izin veren ek izleme ile geliştirilmiştir. XenForo 2.2'de, postalar işlenmeden önce özel bir kuyruk tablosuna eklenir. Bu işlevsellik büyük ölçüde değişmeden kalır, ancak gönderilecek postaları kendi tablolarında sıraya koymak yerine, artık doğrudan
Bu şekilde kuyruğa alınan yalnızca postalar değildir. Anlık bildirimlerin ve web kancalarının gönderilmesi de artık iş sisteminde kuyruğa alınıyor, böylece bunlardan bir veya daha fazlasının gönderilmesine neden olabilecek içerik gönderilirken fark edilebilir bir gecikme yaşanmıyor.
Bu öğeleri bu şekilde sıraya koymanın yanı sıra, geliştiriciler başarısızlık durumunda işlerinin yeniden denenebilir olmasını da tercih edebilirler. Bu, mevcut posta kuyruğunun mevcut davranışını korur ve ayrıca web kancalarının başarısızlık durumunda yeniden denenmesine olanak tanır.
Yeniden denemeler arasındaki bekleme süresi doğrudan İş sınıfında yapılandırılabilir veya önceki denemelerin sayısına bağlı olarak yeniden denemeler arasındaki gecikmenin uzatılması için mantıklı varsayılanlar kullanılabilir.
Belirli sayıda başarısız denemeden sonra işler başarısız olarak işaretlenebilir ve yeni bir x
Uzak nesne depolama için paket desteği
PHP için AWS SDK'daki bazı değişiklikler sayesinde artık XenForo ile birlikte Amazon S3 ve uyumlu nesne depolama hizmetleriyle iletişim kurmaktan sorumlu olan kütüphane bölümlerini de gönderebiliyoruz.
Aşağıdaki kaynak tarafından sağlanan kurulum talimatları hala gereklidir:
Ancak XenForo 2.3 ile başlayarak, yapılandırmak için artık bir "eklenti" yüklemenize gerek kalmayacak. Bunu bir "eklenti" olarak adlandırmak biraz yanlış bir isimdir, çünkü gerçekten yaptığı tek şey (önceden) devasa AWS SDK'sını içerir. Artık sadece Amazon S3 SDK parçalarını dahil edebiliyoruz, depolama alanınızı Amazon S3, Cloudflare R2 ve diğerleri gibi uzak bir hizmete boşaltmak için gereken daha az adım var.
Geliştirilmiş MySQL aramasıyla tam InnoDB desteği
Geçmişte, MySQL'de MyISAM ve MEMORY tablolarını kullanmaya devam etmemiz için iyi nedenler vardı. Yıllar ilerledikçe, veritabanlarında bu depolama motorlarına duyulan ihtiyaç, daha iyi donanım performansı ve InnoDB'deki gelişmelerle uzun süredir ortadan kalktı.
XenForo 2.3 ile başlayarak, kalan tabloların çoğunu InnoDB kullanmak için otomatik olarak dönüştürüyoruz ve yeni kurulumlar için tüm tabloların varsayılan olarak InnoDB kullanmasını sağlıyoruz.
Manuel olarak dönüştürülmesi gereken tek tablo
InnoDB kullanarak tam metin araması, daha düşük bir varsayılan minimum kelime uzunluğu ve çok daha küçük bir durdurma kelimesi kümesi ile birlikte geliştirilmiş bir puanlama algoritması sunduğundan, kapının hemen dışında bir gelişme olmalıdır. Daha önce XenForo Enhanced Search'e özel bir özellik olan alaka düzeyi arama sırasını bile destekliyoruz, ancak bunun yararlı olup olmadığı konusunda yorum yapmadan önce gerçek dünya testine tabi tutulacak.
Bu değişiklikler nedeniyle, XenForo 2.3 ile başlayarak en az MySQL 5.7 veya MariaDB 10.2 gerektireceğiz.
Yerel 'yapışkan' ve tarih/saat girişleri
Artık geçerli olmaması gereken eski tarayıcı tuhaflıkları ve gelişmiş HTML standartları nedeniyle, artık yapışkan öğeleri ve tarih girdilerini üçüncü taraf kütüphaneleri kullanmadan yerel olarak işliyoruz.
'Yapışkan' desteği açısından, bu çoğunlukla yönetici kontrol paneli navigasyonunu ve bazı eski durumlarda genel taraftaki yapışkan başlığı etkiler. Çoğunlukla, herhangi bir fark görmemelisiniz ve özellikle yönetici kontrol paneli navigasyonu için deneyim, bazı durumlarda çok daha az sarsıntılı olmalıdır.
XenForo içindeki tarih girdileri artık üçüncü taraf bir kütüphane kullanmak yerine yerel tarih girdileri ile değiştirildi. Her tarayıcı/işletim sistemi, aşağıda görüldüğü gibi tarih seçiciyi biraz farklı şekilde oluşturacaktır (Chrome, Firefox, macOS Safari ve iOS resimde gösterilmiştir):
Ancak bunların hepsi en azından eskisinden çok daha işlevseldir ve daha önce tarih girdilerini kullanmış olan kişilere tanıdık gelecektir.
Mevcut <xf:dateinput> etiketiyle tarih girdilerini desteklemenin yanı sıra, sırasıyla HTML standardı
"Forum etkin değil" sayfasını otomatik olarak yenile
Forumunuzu kapatmanız gerektiğinde, bunu yapmak için "pano aktif" düğmesini kullanmış olacaksınız. Bu sayfa artık her 60 saniyede bir otomatik olarak yenilenecek, böylece forum yedeklendiğinde insanlar yenilemeye gerek kalmadan sitenizi daha erken kullanmaya başlayacaklar.
Eklenti arşivini CLI ile yükleme
Bir süredir, eklenti dosyaları sunucuda zaten çıkarılmış ve yerindeyse bir eklenti yüklemenizi sağlayan bir CLI komutumuz vardı. XenForo 2.3 ile başlayarak, artık eklenti kimliği argümanını sunucunuzdaki bir ZIP dosyasının yolu ile değiştirebilirsiniz:
Bu, arşivi otomatik olarak çıkaracak, dosyaları yerine kopyalayacak ve eklentiyi yükleyecektir. Aynı şey yükseltmeler için de geçerlidir!
Başlıklar için bağlantılar
İçerik içinde bir başlık her kullanıldığında, artık başlığın yanında görünen bağlantı simgesi aracılığıyla üzerine gelindiğinde erişilebilen otomatik bir bağlantı bağlantısı oluşturuluyor:
Moderatörler için e-posta bildirimleri
Bazen yoğun bir forumda olup bitenleri takip etmek zor olabilir veya küçük bir ekipseniz, bazen çeşitli moderatör görevlerine yanıt vermek zor olabilir.
XenForo 2.3'te bunu kolaylaştırmak için, moderatörler artık bildirilen yeni içerik veya onay bekleyen yeni içerik için e-posta uyarılarını seçebilirler,
Bu tercihler etkinleştirildiğinde (hesap tercihleri altında moderatör bazında), bu eylemlerden herhangi biri dikkat gerektirdiğinde, bu moderatörlere bir e-posta gönderilecektir.
Kullanıcı kimliği ifadeyle eşleşir
2.3 için yeni olan, kullanıcı ölçütü seçicisine, kullanıcı kimliklerine karşı CSS tarzı :nth-child seçicilerine izin veren bir ektir. Bu başlangıçta kulağa saçmalık gibi gelse de, bu araç için güçlü bir uygulama var.
Bir 'Testing group' kullanıcı grubuna erişim sağlayan ve 'User ID matches' ifadesi için 2n değerine sahip tüm kullanıcılara uygulanan bir kullanıcı grubu promosyonunuz olduğunu düşünelim. Bu promosyon, kullanıcı kimliği çift olan tüm kullanıcılar için geçerli olacaktır. Daha sonra 'Test grubu'ndaki kullanıcılar için belirli işlevleri etkinleştirebilir ve bu grupta olmayan ve değiştirilen işlevlere erişimi olmayan kullanıcılara kıyasla bu araçlarla etkileşimlerini ölçmek için çeşitli araçlar kullanabilirsiniz. Kısacası, tüm kullanıcı tabanınız üzerinde A/B testi yapmanın hızlı ve kolay bir yoluna sahip olursunuz.
Elbette testlerinizi tek bir grupla sınırlamak zorunda değilsiniz. Kullanıcı tabanınızı üç gruba ayırmak için üç ayrı promosyonda 3n, 3n+1 ve 3n+2 kriterleri oluşturabilir veya istediğiniz şekilde ayrıştırma yapabilirsiniz.
Kaynak : XF 2.3 - Miscellaneous changes for XenForo 2.3
Apple'la oturum açın
Mevcut bağlı hesap sağlayıcıları paketimize katılmak için, XenForo 2.3'te Apple ile Oturum Açma desteği ekliyoruz. Bunun kurulumu biraz daha zahmetli olacak, bir Apple geliştirici hesabı ve kullanıcı arayüzümüz aracılığıyla yüklenmesi gereken bir sertifika dosyası oluşturulmasını gerektirecek:Yayınlanmadan önce, XenForo kılavuzu aracılığıyla tam kurulum sürecini belgeleyeceğiz. Apple'ın "E-postamı gizle" özelliği ile kaydolan kullanıcılar için de ek bir adım gerekiyor.
Etkinleştirildikten sonra, kullanıcılar oturum açabilecek veya ilgili yerdeki Apple düğmesiyle kaydolabilecekler
Bağlı hesaplar için kullanıcıları arama
Hangi kullanıcılarınızın hangi bağlı hesaplara sahip olduğunu merak ettiyseniz, artık bu listeyi doğrudan yönetici kontrol panelinizdeki "Kullanıcı ara" sayfasından çekebilirsiniz.
Aramak istediğiniz belirli bağlı hesap(lar)ı seçmeniz yeterlidir; bu hesapların bağlı olduğu kullanıcıların listesi görüntülenecektir.
IndexNow desteği
XenForo 2.3'te artık IndexNow desteğini etkinleştirebilirsiniz. Bu, Bing, Yandex ve diğerleri tarafından forumunuzda içerik oluşturulduğunda, güncellendiğinde veya silindiğinde onları doğrudan bilgilendirmenize olanak tanıyan yeni bir girişimdir. Bu olaylardan biri gerçekleştiğinde, URL'yi IndexNow'a göndermek için bir iş sıraya alınır. Bu, arama motorları tarafından okunabilecek veya okunamayacak büyük site haritası dosyaları oluşturma ihtiyacını ortadan kaldırır.
Google da dahil olmak üzere arama motorlarının sınırlı desteği nedeniyle, site haritası oluşturma yerinde kalır ve değişmeden kalır, ancak IndexNow şimdi veya gelecekte destekleyen arama motorları için kullanılabilir.
Genel olarak kuyruğa alınmış ve yeniden denenebilir işler
XenForo 2.3 ile başlayarak, mevcut iş sistemi, genel bir kuyruk sistemi olarak kullanılmasına izin veren ek izleme ile geliştirilmiştir. XenForo 2.2'de, postalar işlenmeden önce özel bir kuyruk tablosuna eklenir. Bu işlevsellik büyük ölçüde değişmeden kalır, ancak gönderilecek postaları kendi tablolarında sıraya koymak yerine, artık doğrudan
xf_job
tablosunda sıraya konurlar.Bu şekilde kuyruğa alınan yalnızca postalar değildir. Anlık bildirimlerin ve web kancalarının gönderilmesi de artık iş sisteminde kuyruğa alınıyor, böylece bunlardan bir veya daha fazlasının gönderilmesine neden olabilecek içerik gönderilirken fark edilebilir bir gecikme yaşanmıyor.
Bu öğeleri bu şekilde sıraya koymanın yanı sıra, geliştiriciler başarısızlık durumunda işlerinin yeniden denenebilir olmasını da tercih edebilirler. Bu, mevcut posta kuyruğunun mevcut davranışını korur ve ayrıca web kancalarının başarısızlık durumunda yeniden denenmesine olanak tanır.
Yeniden denemeler arasındaki bekleme süresi doğrudan İş sınıfında yapılandırılabilir veya önceki denemelerin sayısına bağlı olarak yeniden denemeler arasındaki gecikmenin uzatılması için mantıklı varsayılanlar kullanılabilir.
Belirli sayıda başarısız denemeden sonra işler başarısız olarak işaretlenebilir ve yeni bir x
f_failed_job
tablosunda saklanır.Uzak nesne depolama için paket desteği
PHP için AWS SDK'daki bazı değişiklikler sayesinde artık XenForo ile birlikte Amazon S3 ve uyumlu nesne depolama hizmetleriyle iletişim kurmaktan sorumlu olan kütüphane bölümlerini de gönderebiliyoruz.
Aşağıdaki kaynak tarafından sağlanan kurulum talimatları hala gereklidir:
AWS SDK for PHP
aws.amazon.com
Ancak XenForo 2.3 ile başlayarak, yapılandırmak için artık bir "eklenti" yüklemenize gerek kalmayacak. Bunu bir "eklenti" olarak adlandırmak biraz yanlış bir isimdir, çünkü gerçekten yaptığı tek şey (önceden) devasa AWS SDK'sını içerir. Artık sadece Amazon S3 SDK parçalarını dahil edebiliyoruz, depolama alanınızı Amazon S3, Cloudflare R2 ve diğerleri gibi uzak bir hizmete boşaltmak için gereken daha az adım var.
Geliştirilmiş MySQL aramasıyla tam InnoDB desteği
Geçmişte, MySQL'de MyISAM ve MEMORY tablolarını kullanmaya devam etmemiz için iyi nedenler vardı. Yıllar ilerledikçe, veritabanlarında bu depolama motorlarına duyulan ihtiyaç, daha iyi donanım performansı ve InnoDB'deki gelişmelerle uzun süredir ortadan kalktı.
XenForo 2.3 ile başlayarak, kalan tabloların çoğunu InnoDB kullanmak için otomatik olarak dönüştürüyoruz ve yeni kurulumlar için tüm tabloların varsayılan olarak InnoDB kullanmasını sağlıyoruz.
Manuel olarak dönüştürülmesi gereken tek tablo
xf_search_index
tablosudur. Mevcut kurulumlar için, tam metin arama uygulamasındaki farklılıklar nedeniyle, xf:convert-search-innodb
adlı bir CLI komutu çalıştırmanız gerekecektir; bu komut sizin için arama dizinini boşaltacak, dönüştürecek ve isteğe bağlı olarak yeniden oluşturacaktır.InnoDB kullanarak tam metin araması, daha düşük bir varsayılan minimum kelime uzunluğu ve çok daha küçük bir durdurma kelimesi kümesi ile birlikte geliştirilmiş bir puanlama algoritması sunduğundan, kapının hemen dışında bir gelişme olmalıdır. Daha önce XenForo Enhanced Search'e özel bir özellik olan alaka düzeyi arama sırasını bile destekliyoruz, ancak bunun yararlı olup olmadığı konusunda yorum yapmadan önce gerçek dünya testine tabi tutulacak.
Bu değişiklikler nedeniyle, XenForo 2.3 ile başlayarak en az MySQL 5.7 veya MariaDB 10.2 gerektireceğiz.
Yerel 'yapışkan' ve tarih/saat girişleri
Artık geçerli olmaması gereken eski tarayıcı tuhaflıkları ve gelişmiş HTML standartları nedeniyle, artık yapışkan öğeleri ve tarih girdilerini üçüncü taraf kütüphaneleri kullanmadan yerel olarak işliyoruz.
'Yapışkan' desteği açısından, bu çoğunlukla yönetici kontrol paneli navigasyonunu ve bazı eski durumlarda genel taraftaki yapışkan başlığı etkiler. Çoğunlukla, herhangi bir fark görmemelisiniz ve özellikle yönetici kontrol paneli navigasyonu için deneyim, bazı durumlarda çok daha az sarsıntılı olmalıdır.
XenForo içindeki tarih girdileri artık üçüncü taraf bir kütüphane kullanmak yerine yerel tarih girdileri ile değiştirildi. Her tarayıcı/işletim sistemi, aşağıda görüldüğü gibi tarih seçiciyi biraz farklı şekilde oluşturacaktır (Chrome, Firefox, macOS Safari ve iOS resimde gösterilmiştir):
Ancak bunların hepsi en azından eskisinden çok daha işlevseldir ve daha önce tarih girdilerini kullanmış olan kişilere tanıdık gelecektir.
Mevcut <xf:dateinput> etiketiyle tarih girdilerini desteklemenin yanı sıra, sırasıyla HTML standardı
<input type="date">
, <input type="datetime-local">
ve <input type="time">
etiketlerine karşılık gelen <xf:datetime>
etiketiyle tarih ve saat girdilerini ve <xf:timeinput>
etiketiyle zaman girdilerini de destekliyoruz."Forum etkin değil" sayfasını otomatik olarak yenile
Forumunuzu kapatmanız gerektiğinde, bunu yapmak için "pano aktif" düğmesini kullanmış olacaksınız. Bu sayfa artık her 60 saniyede bir otomatik olarak yenilenecek, böylece forum yedeklendiğinde insanlar yenilemeye gerek kalmadan sitenizi daha erken kullanmaya başlayacaklar.
Eklenti arşivini CLI ile yükleme
Bir süredir, eklenti dosyaları sunucuda zaten çıkarılmış ve yerindeyse bir eklenti yüklemenizi sağlayan bir CLI komutumuz vardı. XenForo 2.3 ile başlayarak, artık eklenti kimliği argümanını sunucunuzdaki bir ZIP dosyasının yolu ile değiştirebilirsiniz:
Kod:
php cmd.php xf:addon-install /path/to/addon.zip
Bu, arşivi otomatik olarak çıkaracak, dosyaları yerine kopyalayacak ve eklentiyi yükleyecektir. Aynı şey yükseltmeler için de geçerlidir!
Başlıklar için bağlantılar
İçerik içinde bir başlık her kullanıldığında, artık başlığın yanında görünen bağlantı simgesi aracılığıyla üzerine gelindiğinde erişilebilen otomatik bir bağlantı bağlantısı oluşturuluyor:
Moderatörler için e-posta bildirimleri
Bazen yoğun bir forumda olup bitenleri takip etmek zor olabilir veya küçük bir ekipseniz, bazen çeşitli moderatör görevlerine yanıt vermek zor olabilir.
XenForo 2.3'te bunu kolaylaştırmak için, moderatörler artık bildirilen yeni içerik veya onay bekleyen yeni içerik için e-posta uyarılarını seçebilirler,
Bu tercihler etkinleştirildiğinde (hesap tercihleri altında moderatör bazında), bu eylemlerden herhangi biri dikkat gerektirdiğinde, bu moderatörlere bir e-posta gönderilecektir.
Kullanıcı kimliği ifadeyle eşleşir
2.3 için yeni olan, kullanıcı ölçütü seçicisine, kullanıcı kimliklerine karşı CSS tarzı :nth-child seçicilerine izin veren bir ektir. Bu başlangıçta kulağa saçmalık gibi gelse de, bu araç için güçlü bir uygulama var.
Bir 'Testing group' kullanıcı grubuna erişim sağlayan ve 'User ID matches' ifadesi için 2n değerine sahip tüm kullanıcılara uygulanan bir kullanıcı grubu promosyonunuz olduğunu düşünelim. Bu promosyon, kullanıcı kimliği çift olan tüm kullanıcılar için geçerli olacaktır. Daha sonra 'Test grubu'ndaki kullanıcılar için belirli işlevleri etkinleştirebilir ve bu grupta olmayan ve değiştirilen işlevlere erişimi olmayan kullanıcılara kıyasla bu araçlarla etkileşimlerini ölçmek için çeşitli araçlar kullanabilirsiniz. Kısacası, tüm kullanıcı tabanınız üzerinde A/B testi yapmanın hızlı ve kolay bir yoluna sahip olursunuz.
Elbette testlerinizi tek bir grupla sınırlamak zorunda değilsiniz. Kullanıcı tabanınızı üç gruba ayırmak için üç ayrı promosyonda 3n, 3n+1 ve 3n+2 kriterleri oluşturabilir veya istediğiniz şekilde ayrıştırma yapabilirsiniz.
Kaynak : XF 2.3 - Miscellaneous changes for XenForo 2.3