Створення користувацької сторінки профілю користувача HTML за допомогою змінних Joomla


9

Я думаю, що це буде складним, але я постараюся зробити все можливе, щоб ви зрозуміли, чого я хочу досягти. Все, що я хочу, - це зробити власну HTML-сторінку , на якій буде відображена інформація користувача, який увійшов на мій веб-сайт Joomla. Але я хочу, щоб це було добре виглядати, я хочу мати фонове зображення, я хочу включати CSS та різні шрифти для різних змінних Joomla. Приклад того, що я хочу досягти:

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

Це те , що я говорив про те , призначаючи <h1>мітки для імені користувача або призначення <h2>на Email і т.д.

Чи є можливість підключити HTML-сторінку до бази даних Joomla та отримати дані з неї та відобразити її таким чином.


1
Якщо ви використовуєте ajax, ви могли б відображати інформацію на html-сторінці, але вам все одно знадобиться використовувати файл PHP для надсилання інформації на сторінку HTML.
— TryHarder

Відповіді:


9

Добре для початку, ви не можете використовувати .html сайт для відображення інформації про користувачів, натомість вам знадобиться файл .php .

Після створення вам потрібно буде імпортувати Joomla CMS так:

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');

Можливо, вам доведеться змінити рядок 2 коду вище, залежно від того, де корінь вашого сайту Joomla відповідає вашому користувальницькому файлу 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>";

Отже, ваш загальний файл буде виглядати приблизно так:

<?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>";    
?>

спочатку він дав мені порожню сторінку, а тепер я перемістив її в папку шаблонів, і це дало мені простий вихід HTML? Це просто показ, Name of the user who has logged inа не фактичний користувач, який увійшов?
— saibbyweb

Ви створили файл html або php? Як ви називаєте файл, вводячи URL-адресу до шляху? Ви змінили другий рядок першого фрагмента коду, як я вже згадував у своїй відповіді? будь ласка , переконайтеся , що ви будете слідувати інструкціям , ретельно , як це робить роботу
— Лоддер

я створив .PHP-файл, і я просто набираю URL-адресу до шляху. я розмістив файл PHP в корені мого веб-сайту, і я замінив другий рядок тим, що написано у моєму файлі define('JPATH_BASE', __DIR__);
— INDEX.PHP

lodder, ти думаєш, це спрацює без екземпляра цілої програми cms? Я думаю, що це трохи складніше ...
— Чад Вітненгл

@ChadWindnagle - ах мій поганий. забув 1 рядок, який я зараз додав. Випробування та повноцінна робота
— Лоджер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.