Xenforo Eklenti Nasıl Yazılır?

Merhaba, tekrar hoş geldiniz!

Bilgi sahibi olanlarla ihtiyaç duyanları buluşturmak, farklı bakış açılarına sahip insanları bir araya getirerek birbirlerini daha iyi anlamalarını sağlamak ve herkesin bilgisini paylaşmasını sağlamak istiyoruz.

cakal

Yönetici
Katılım
5 Ara 2018
Mesajlar
521
Tepkime puanı
172
Puanları
43
Konum
izmir
XenForo eklentisi yazmak için aşağıdaki adımları izleyebilirsiniz:

Gereksinimler​

  1. PHP ve MySQL Bilgisi: XenForo PHP ve MySQL tabanlı bir platformdur.
  2. XenForo Yazılımı: Geliştirme ortamınızda XenForo'nun kurulu olduğundan emin olun.
  3. Temel Programlama Bilgisi: Nesne yönelimli programlama ve MVC (Model-View-Controller) mimarisine aşina olmalısınız.

Adımlar​

1. Ortam Hazırlığı​

XenForo'nun kurulu olduğu bir test ortamı hazırlayın. Ayrıca, eklentinizi geliştirmek ve test etmek için bir PHP geliştirme ortamı (örn. XAMPP, MAMP) kullanabilirsiniz.

2. Eklenti Yapısı Oluşturma​

XenForo eklentileri genellikle bir dosya yapısına sahiptir. Bu yapıyı oluşturmanız gerekecek.

src/addons/YourNamespace/YourAddon/
Bu dizin altında gerekli dosya ve klasörleri oluşturun:

  • addon.json: Eklenti bilgilerini içeren bir JSON dosyası.
  • src/addons/YourNamespace/YourAddon/_data: Şema dosyaları ve diğer veri dosyaları.
  • src/addons/YourNamespace/YourAddon/Listener: Event listener dosyaları.
  • src/addons/YourNamespace/YourAddon/Entity: Veri tabanı tabloları için entity dosyaları.
  • src/addons/YourNamespace/YourAddon/Repository: Veri tabanı sorguları için repository dosyaları.
  • src/addons/YourNamespace/YourAddon/Service: İş mantığı için servis dosyaları.
  • src/addons/YourNamespace/YourAddon/Admin: Admin kontrol paneli dosyaları.

3. addon.json Dosyasını Oluşturma​

addon.json dosyasında eklentinizin temel bilgilerini tanımlayın. Örneğin:

JSON:
{
    "legacy_addon_id": "",
    "title": "Your Addon Title",
    "description": "A brief description of your addon.",
    "version_id": 1000010,
    "version_string": "1.0.0",
    "dev": "Your Name",
    "dev_url": "http://yourwebsite.com",
    "support_url": "http://yourwebsite.com/support",
    "require": {
        "XF": [2010070, "XenForo 2.1.0+"]
    }
}

4. Eklenti Mantığını Yazma
Eklentinizin işlevselliğine göre gerekli PHP dosyalarını oluşturun ve düzenleyin. Örneğin, bir event listener yazmak için Listener dizininde bir dosya oluşturun.

src/addons/YourNamespace/YourAddon/Listener/Example.php:

PHP:
namespace YourNamespace\YourAddon\Listener;

class Example
{
    public static function templaterSetup(\XF\Template\Templater $templater)
    {
        $templater->addFunction('exampleFunction', function($templater, &$escape, $argument) {
            return 'Hello ' . htmlspecialchars($argument);
        });
    }
}

5. Eklenti Kayıt İşlemi​

Eklentinizi XenForo'ya tanıtmak için gerekli kayıt işlemlerini gerçekleştirin. Bunun için src/addons/YourNamespace/YourAddon/Setup.php dosyasını oluşturun:

PHP:
namespace YourNamespace\YourAddon;

use XF\AddOn\AbstractSetup;

class Setup extends AbstractSetup
{
    public function installStep1()
    {
        // Kurulum işlemleri
    }

    public function uninstallStep1()
    {
        // Kaldırma işlemleri
    }
}

6. Eklentiyi Yükleme ve Test Etme​

XenForo kontrol paneline gidin ve eklentinizi yükleyin. Eklentinizin çalıştığından emin olun ve gerekli düzeltmeleri yapın.

Ekstra Kaynaklar​

XenForo eklentisi yazarken, XenForo'nun resmi belgelerini ve topluluk forumlarını takip ederek karşılaştığınız sorunları çözebilirsiniz.
 
Geri
Üst Alt