Joomla Değişkenlerini Kullanarak Özel HTML Kullanıcı Profili Sayfası Oluşturma


9

Sanırım karmaşık olacak ama sizi anlamak için elimden geleni yapacağım, ne elde etmek istediğimi. Tek istediğim, Joomla web siteme giriş yapan kullanıcının bilgilerini gösterecek özel bir HTML sayfası yapmak . Ama iyi görünmesini istiyorum, bir arka plan resmine sahip olmak istiyorum, farklı Joomla değişkenleri için CSS ve farklı yazı tipleri eklemek istiyorum. Ne elde etmek istediğime bir örnek:

<p> Name : </p> <h1> Name of the user who has logged in </h1>

<p> Email : </p> <h2> Email of the user who has logged in </h2>

Bu, bahsettiğim şey, kullanıcının Adına<h1> etiket atama veya E-postaya atama vb.<h2>

Joomla veritabanına bir HTML sayfası bağlamak ve ondan veri almak ve bu şekilde görüntülemek için yine de var mı?


1
Ajax kullanacaksanız, bilgileri bir html sayfasında görüntüleyebilirsiniz, ancak bilgileri HTML sayfasına göndermek için yine de bir PHP dosyası kullanmanız gerekir.
TryHarder

Yanıtlar:


9

Yeni başlayanlar için Tamam, kullanıcı bilgilerini görüntülemek için bir .html sitesi kullanamazsınız , bunun yerine .php dosyasına ihtiyacınız olacaktır .

Oluşturulduktan sonra, Joomla CMS'yi şu şekilde içe aktarmanız gerekir:

define( '_JEXEC', 1 );
define( 'JPATH_BASE', realpath(dirname(__FILE__).'/' ));  
require_once ( JPATH_BASE .'/includes/defines.php' );
require_once ( JPATH_BASE .'/includes/framework.php' );
$app = JFactory::getApplication('site');

Joomla sitenizin kökünün özel PHP dosyanıza göre nerede olduğuna bağlı olarak yukarıdaki kodun 2. satırını değiştirmeniz gerekebilir.

Şimdi, mevcut kullanıcının oturum açma adını ve e-postasını almak için aşağıdaki kodu ekleyin:

$user = JFactory::getUser();

echo "<p>Name: " . $user->username . "</p>";
echo "<h1>Name of the user who has logged in </h1>";

echo "<p>Email: " . $user->email . "</p>"; 
echo "<h2>Email of the user who has logged in </h2>";

Yani genel dosya şöyle görünecektir:

<?php
   define( '_JEXEC', 1 );
   define( 'JPATH_BASE', realpath(dirname(__FILE__).'/' ));  
   require_once ( JPATH_BASE .'/includes/defines.php' );
   require_once ( JPATH_BASE .'/includes/framework.php' );

   $user = JFactory::getUser();

   echo "<p>Name: " . $user->username . "</p>";
   echo "<h1>Name of the user who has logged in </h1>";

   echo "<p>Email: " . $user->email . "</p>"; 
   echo "<h2>Email of the user who has logged in </h2>";    
?>

ilk bana boş bir sayfa verdi ve şimdi ben şablonları klasörüne taşındı, bana basit bir HTML ÇIKTI? Name of the user who has logged inOturum açan gerçek kullanıcı yerine basitçe mi gösteriliyor ?
saibbyweb

Bir html veya php dosyası oluşturdunuz mu? Dosyayı, URL'yi yola yazarak nasıl çağırıyorsunuz? İlk kod snippet'inin ikinci satırını cevabımda belirttiğim gibi değiştirdiniz mi? Bu şekilde dikkatlice verilen talimatları izleyin emin olun yapar çalışma
Lodder

bir .PHP dosyası oluşturdum ve sadece yolun URL'sini yazıyorum. php dosyasını web sitemin köküne yerleştirdim ve ikinci satırı INDEX.PHP dosyamda yazdığı şeyle değiştirdim define('JPATH_BASE', __DIR__);
saibbyweb

lodder tüm cms uygulamasını örneklemeden çalışacağını düşünüyor musunuz? Bence bu biraz daha karmaşık ...
Chad Windnagle

@ChadWindnagle - ahh benim hatam. şimdi eklediğim 1 satırı unuttum. Test ve tam çalışma
Lodder
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.