Joomla

  • yarn加速安裝的秘密

    yarn 在於根目錄下.yarn-cache這個資料夾,會將每次安裝套件先cache一份到這來,往後如果需要相同套件,就會從這邊拉。

    大多數的指令用法和原本並無差異,只要將 npm 換成 yarn即可,特別要注意的是 npm install [package] 安裝少數套件在 yarn 是不支援的,yarn 的套件都是必須儲存 (--save)。

  • 當我更新Joomla 3.4.3時,創建的DisplayNews Module仍然是工作,但是當我嘗試創建一個新的DisplayNews Module,或是更新我舊有創建好的DisplayNews Module時候,我的網站整個掛了,得到了個錯誤訊息。

    Error:

    1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ) group by a.id ORDER BY a.created DESC LIMIT 0,1' at line 10 SQL=SELECT 'MOD_DN', a.id, a.*, CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":", a.id, a.alias) ELSE a.id END as slug, CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":", cc.id, cc.alias) ELSE cc.id END as catslug, a.attribs, a.title, a.introtext as introtext, a.catid , a.created as created, a.images, cc.title as cat_title, cc.alias as cat_alias, cc.published as cat_published , cc.description as cat_description , cc.params as cat_params FROM fzhlib2_content AS a JOIN fzhlib2_users AS c ON c.id = a.created_by JOIN fzhlib2_categories AS cc ON cc.id = a.catid WHERE (a.state IN (1)) AND (a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= 2015-07-22="" and="" a.publish_down="" or="">= '2015-07-22 01:45:43' ) AND (a.catid=0 OR cc.published = '1') AND (a.catid IN ( 38 ) ) AND (a.access IN ( ) ) group by a.id ORDER BY a.created DESC LIMIT 0,1
  • 一篇文章內提供訪客留言,它是對於文章評論或產品的重要反饋。

    評論可以為您提供許多改善網站的機會,一旦您的訪問者發表評論,就會有越來越多的獨特內容和其他見解,它還可以幫助您進行 SEO,因為 Google 也可以識別評論部分。您的訪客也可以從其他人的角度看到產品。這些只是對Joomla 網站實施適當的評論系統後可以實現的許多基本好處中的幾個。花點時間,考慮選擇以下擴展之一。它們每個都有不同的功能,但是您一定會找到最能幫助您的功能。

  •  

     

    AcyMailing是一個Joomla電子報元件,能夠讓您的輕鬆有效率的管理您所要發送的E-mail電子報!

    它無縫地整合到Joomla和提供專業的功能,使您能夠讓您與您的用戶永久性接觸。

    AcyMailing的設計操作上好使用將節省您許多設定的時間。

     

    1. Joomla 3後端操作,上邊選單選擇元件JoomGallery至管理界面

      JoomGallery 管理介面

  • 獲取最後插入ID

    要獲取最後插入的行的ID,可以insertid()像這樣使用:

    $db->insertid();

    您可以在下一個查詢中的任何位置使用

  • Joomla Markdown 編輯器(JME)具有廣泛的簡潔性,可以極大地節省您的時間。它允許您選擇文本,然後使用ParsedownMarkdown Extra Extension庫立即使用GitHub風格解析它。它比你想像的簡單得多。

  • 你需要一個Sitemap網站地圖,成功優化您的Joomla網站給Google?

    OSMap是一個提供免費創建網站地圖sitemap元件,添加到您的Joomla網站的最簡單方法。
    你需要做的就是安裝OSMap。OSMap會自動創建一個Google友好的站點地圖sitemap為你的所有內容。

    網址:https://www.alledia.com/extensions/osmap/

    安裝完成將會在元件選單看見OSMap選項。

     

  • JFactory::getLanguage()

    使用下列語句可以知道目前你的Joomla網站的語系。

    Example 1

    下面的代碼獲取當前語言的名稱。

    <?php
        $lang = JFactory::getLanguage();
        echo 'Current language is: ' . $lang->getName();
    ?>

    Example 2

    下面的代碼判斷當前語言。

    <?php
        $lang = JFactory::getLanguage();
        $result = $lang->getTag();
        If($result == "en-GB"){
            echo 'is EN ';
        }else{
            echo 'Not is EN ';
        } 
    ?>

    如此就可以做出許多判斷,需要做客製布景時,讓某些東西在特定的語系出現,就可以這樣判斷。

  • 碰到的問題是,同樣的一篇文章,為什麼Joomla RSS 內的pubdate標籤,日期顯示為Wed, 18 Mar 2015 00:00:00 +0800,而後端顯示2015-3-18 16:00:00,就是與後端設定的有時差16小時?
     

     

     

     

     

    已經將後台的伺服器時區設定成Taipei,但RSS就是不同步。

    主要是Joomla會以通用協定時間UTC為標準時區,所以需要主機的時區設定成UTC,就可解決這個問題。

     

     

  • 強化SEO自動生成meta description內容

    Joomla SEOSimple plugin會自動生成文章內的內容在meta description標籤內,以Google來說,官方提供了關於優化網站的一些技巧,告訴你title(標題)最為重要,再來就是description(描述),這兩個影響了搜尋引擎,也影響了使用者的瀏覽判斷依據。然而這個plugin就是用來解決這個問題,通常我們不會太注意,文章頁面的meta description,有時都根本沒有輸入任何訊息,這個插件就是幫助你,自動將文章內容生成為meta description的敘述文字,幫助你在SEO加分達到一定的效果。若要看要看到該plugin在工作中,您必須查看瀏覽器中的網頁的源代碼。

    自行定義你的Joomla網站標題title

    另一個好用的特點,SEOSimple可以自訂你的網站title標籤,你可以不必為了因為Joomla內建的標題顯示方式煩惱,它能做到的定義首頁要的客製化標題,與所要將網站標題在每個頁面標題的後、或在前。如下定義的方式。


    • 頁面標題配置:

      • [內容標題] | [站點名稱]

      • [站點名稱] | [內容標題]

      • [內容標題]
    • 首頁標題配置顯示方式:

      • [Disable - Use Joomla Default]

      • [Custom Title] | [Site Title]

      • [Site Title] | [Custom Title]

      • [Custom Title]

      • [Site Title]

      • [Site Title] | [Default Title] NEW

      • [Default Title] | [Site Title] NEW

      • [Custom Title] | [Default Title] NEW

      • [Default Title] | [Custom Title] NEW

    ※通常會將網站標題在尾隨頁面標題後如[內容標題] | [站點名稱]這樣能夠提供最好的seo,搜尋是以前面開始搜尋,所以重點放在前面。

    ※在這裡補充,若本身文章已有輸入meta description,它則不會使用自動生成的內容去取代您輸入的內容。是一個蠻客製化的Plugin。

    下載:本站載點 原始載點

  • 一個簡單方便容易使用的Joomla Youtube plugin OSYouTube

    OSYouTube插件是一個免費的JOOMLA plugin,你可以簡單地複製YouTube的視頻網址嵌入視頻。

    這是一個插件,可以很容易地嵌入YouTube視頻到你的網站。您不再需要使用標籤,設計上已將Youtube影片支持Responsive所有你需要做的就是複製和從YouTube視頻的URL黏貼到您的文章。其餘的就交給這個OSYouTube插件!就這麼簡單。

    1.下載安裝插件

    2.複製Youtube網址,貼在想要放置影片的文章Joomla編輯器上。就可以看見前端,直接將你的Youtube網址轉換成影片iframe播放方式。(若不想使用Responsive,也可在內設定裡將功能關閉,就會依照你設定的固定大小顯示影片)

  • 如果你有一個Gmail帳戶,你可以使用Gmail作為您的郵件服務器

    在郵件設定選項卡中進行以下設置:

    郵件:SMTP

    Sendmail 路徑:/usr/sbin/sendmail
    SMTP身份驗證:是
    SMTP安全:SSL
    SMTP端口:465
    SMTP用戶名:您的Gmail用戶名 如:Email住址會使用灌水程式保護機制。你需要啟動Javascript才能觀看它
    SMTP密碼:您的Gmail密碼
    SMTP主機:smtp.gmail.com

  • 使Joomla網站更快的必須做的事情之一是啟用Joomla Gzip壓縮。本質上,它要求服務器在將所有文件發送給用戶之前壓縮它們。由於文件較小,因此可以將更少的時間交付給用戶,從而為用戶帶來更快的整體體驗。

    讓我們帶您完成檢查Joomla GZip壓縮是否已啟用以及啟用或禁用它的整個過程。

  • Joomla會員系統加密的方式

    Joomla元件開發時,將元件內使用者帳號密碼,寫入Joomla會員系統的#__users資料表單內,需要與Joomla用戶密碼加密的方式相同,才可整合Joomla前台網站會員系統登入。

    下列函式加密都嘗試使用在Joomla 3+ 以上的版本都可行,不過看Joomla自己產生的密碼與password_hash()相似,都是$2y$10$開頭,建議使用password_hash()產生,因為password_hash()在加密中包含了許多解碼的訊息。

    注意 password_hash() 返回的散列包含了算法、 cost 和鹽值。因此,所有需要的信息都包含內。使得驗證函數不需要儲存額外鹽值等信息即可驗證哈希

  • Akeeba Backup 是一個能夠快速備份Joomla網站的原件,只需要簡單的步驟就可以將,整個網站包含資料庫整個備份起來,打包成一個.jpa壓縮檔案,可以說是一個Joomla網站管理應用必備的工具,你不需傳統繁瑣備份與還原網站的方式,它就像將網站壓縮一個檔案,發現網站有問題時,想還原時在解壓縮進行還原。還原方式更是簡單,就像是安裝一個Joomla網站一樣,一個個步驟恢復你的網站。

    設定備份的資料檔案儲存位置

    點選Configuration

    預設備份檔案儲存路徑/administrator/components/com_akeeba/backup

     (若在備份一次,備份檔案資料夾有資料,備份時將不會將多餘不必要的,之前備份過的舊.jpa檔案一起備份進去。)

    開始備份

    1. 點選Backup Now

  • 啟用Joomla cache緩存快取同時並禁用了匹配點擊數(hits)

    Joomla中啟用緩存,在提供緩存快取頁面時,文章匹配點擊數不會增加。不幸的是,這是Joomla中緩存快取系統的限制,沒有"切換開關"來啟用此功能。

  • 在views/temp目錄下創建當php檔案如下分別鍵入html與Javascript jQuery Ajax部分。

    建立views頁面

    <?php
        <form action="<?php echo JUri::getInstance(); ?>" id="adminForm" name="adminForm" enctype="multipart/form-data" method="post">
    
          <input name='user' placeholder='user'><br>
          <input name='password' type='password' placeholder='password'><br>
          <input type="file" name="file"/>
          <button type='submit'>Try</button>
    
        </form>
        <script>
            (function($)
            {
                $('button').click(function(e){
                    e.preventDefault();
                    var form = $('form')[0];
                    var formData = new FormData(form);
                    $.ajax({
                        url:'index.php?option=com_hrsystem&view=training&layout=upload&format=json',
                        type : "POST",
                        data : formData,
                        contentType: false,
                        cache: false,
                        processData: false,
                        success : function(data) 
                        {
                             console.log(data);
    
                        },error: function(data) 
                        {
                            console.log('無法送出');
                        }
                    })
    
                });
            })(jQuery);
        </script>
    ?>
  • 當您開發新的 Joomla 網站時,您肯定需要知道模板(template)所包含的 Joomla 模塊(module)位置。為了正確顯示,每個元素必須位於 Joomla 模塊的位置。因此,要知道如何在 Joomla 中顯示模塊位置,請按照以下簡單步驟。

  • Joomla 錯誤出現的白畫面

    有時會因為裝了一些不知名的外掛,有可能倒置Joomla掛掉,整個瀏覽器只出現白畫面,相信大家一定有相同的經驗,或是在Joomla 2.5要升級至Joomla 3時這個情況更是不知怎麼處理,讓你不敢往Joomla 3前進,停留在Joomla 2.5的版本。

    Joomla出現白畫面該如何處理

    主要Joomla會因為出現白畫面,是因為有不相容的擴充套件,畫面本身是顯示錯誤訊息,而在預設的錯誤訊息中,他的容錯值是最小,所以畫面上是看不見任何訊息,導致瀏覽器只有白畫面,要顯示錯誤訊息,需要將網站根目錄下的"configuration.php" 檔案,將其中的"Public $error_reporting=default"改成"Public $error_reporting=maximum",容錯最大,這時重新讀取網頁,就可以在遊覽器上看見錯誤訊息,會顯示出擴充套件的錯誤位置,在到目錄找到那個擴充套件資料夾,手動刪除整個錯誤的資料夾,正常情況下重新讀取頁面,就可看見你Joomla網頁了。