Joomla

ถามตอบเกี่ยวกับ Joomla! ผู้ดูแลระบบผู้ใช้นักพัฒนาและนักออกแบบ

6
เป็นวิธีที่เหมาะสมในการโทร AJAX ในองค์ประกอบคืออะไร?
ฉันกำลังพัฒนาองค์ประกอบที่กำหนดเองสำหรับ Joomla! 3.x และต้องการโทร AJAX ภายในเพื่อเรียกข้อมูลบางอย่าง วิธีที่เหมาะสมในการทำคืออะไร?


4
วิธีการสร้างแบบสอบถามย่อยโดยใช้ JDatabase
ที่http://docs.joomla.org/Selecting_data_using_JDatabaseไม่มีวิธีที่เป็นเอกสารสำหรับการเขียนแบบสอบถามย่อยโดยใช้ JDatabase https://gist.github.com/gunjanpatel/8663333เป็นตัวอย่างวิธีหนึ่งในการทำสิ่งนี้ให้สำเร็จด้วย (ละเว้นบิตไม่กี่): $subQuery = $db->getQuery(true); $query = $db->getQuery(true); // Create the base subQuery select statement. $subQuery->select('*') ->from($db->quoteName('#__sub_table')) ->where($db->quoteName('subTest') . ' = ' . $db->quote('1')); // Create the base select statement. $query->select('*') ->from($db->quoteName('#__table')) ->where($db->quoteName('state') . ' = ' . $db->quote('1')) ->where($db->quoteName('subCheckIn') . ' IN (' . $subQuery->__toString() . ')') ...

2
อะไรคือความแตกต่างระหว่าง Joomla! CMS, Joomla! แพลตฟอร์มและ Joomla! กรอบ?
พวกเราหลายคนเข้าใจ Joomla! อ้างถึงซอฟต์แวร์เฉพาะที่เราใช้ แต่มีซอฟต์แวร์ 3 ประเภทที่แตกต่างกันจาก Joomla! เหล่านี้คือ: 1) Joomla! CMS; 2) Joomla! แพลตฟอร์ม; และ 3) Joomla! กรอบ. ความแตกต่างคืออะไร?

3
วิธีที่เหมาะสมในการรับ $ _POST ทั้งหมดคืออะไร
ใน Joomla! 2.5.x ฉันสามารถเรียกใช้JRequest::get('post');แต่เห็นว่าJRequestเลิกใช้แล้วใน Joomla! 3.x JInputฉันควรใช้ ในขณะนี้รหัสที่ฉันใช้เพื่อให้ได้ทั้งหมด$_POST: $app = JFactory::getApplication(); $postData = $app->input->getArray(array_flip(array_keys($_POST))); แต่สิ่งนี้ดูค่อนข้างยุ่งยากและฉันพบปัญหาหากใช้ร่วมกับ$app->input->set();ฉันจะคิดว่าจะมีวิธีที่ดีกว่านี้หรือไม่ เมื่อค้นหาสิ่งนี้ก่อนที่ฉันจะพบผู้คนบอกว่าคุณสามารถวิ่งได้ $app = JFactory::getApplication(); $postData = $app->input->post; แต่เมื่อฉันลองสิ่งนี้ฉันก็มีตัวอย่างของJInputวัตถุ
26 cms  php  jinput  jrequest 

10
เครื่องมือใดบ้างที่ฉันสามารถใช้เพื่อช่วยฉันในการพัฒนา Joomla?
ฉันยังใหม่กับการพัฒนา Joomla และฉันอยากจะรู้ว่าเครื่องมือและ / หรือซอฟต์แวร์ใดที่สามารถช่วยฉันในการพัฒนาทั้งส่วนแบ็คเอนด์และส่วนหน้าของไซต์ Joomla ซึ่งรวมถึงการบำรุงรักษาและการปรับปรุงในอนาคตในอนาคต

8
แนวทางปฏิบัติที่แนะนำเกี่ยวกับสิทธิ์การใช้ไฟล์ / ไดเรกทอรีของ Joomla และความเป็นเจ้าของในระบบ Linux?
ในอดีตที่ผ่านมาฉันมักพบปัญหากับการอนุญาตและความเป็นเจ้าของไฟล์ / ไดเรกทอรี Joomla บนระบบลินุกซ์ ปัญหาที่พบ ไม่สามารถถ่ายโอนไฟล์ไปยังเซิร์ฟเวอร์โดยใช้โปรแกรมเช่น WinSCP ไม่สามารถติดตั้งส่วนเสริม Joomla ปลั๊กอิน ฯลฯ ไฟล์และโฟลเดอร์ที่ไม่ปลอดภัยเนื่องจากการอนุญาตที่เป็นอันตรายและการตั้งค่าความเป็นเจ้าของ แนวทางปฏิบัติที่ดีที่สุดที่แนะนำสำหรับการตั้งค่าการอนุญาตและการเป็นเจ้าของใน Joomla บนระบบ linux คืออะไร?

4
รับ Joomla Joomla ปัจจุบัน
รหัสต่อไปนี้ใช้งานได้ใน Joomla 1.6 แต่มันมีข้อผิดพลาดมาตรฐานที่เข้มงวดใน 3.x: มาตรฐานที่เข้มงวด: ควรกำหนดตัวแปรโดยอ้างอิงเท่านั้น //Get the full URL for sharing purposes $uri = & JFactory::getURI(); $absolute_url = $uri->toString(); <?php echo $absolute_url; ?> ฉันจะทำให้โค้ดทำงานโดยไม่มีข้อผิดพลาดใน Joomla 3.x ได้อย่างไร?
25 url 

1
วิธีบันทึกฟิลด์ที่กำหนดเองในองค์ประกอบหลัก
ฉันกำลังพยายามเพิ่มฟิลด์เดียวที่เรียบง่ายให้กับรายการ #__content แต่ละรายการและฉันได้ปฏิบัติตามบทแนะนำอย่างระมัดระวังที่การเพิ่มฟิลด์ที่กำหนดเองให้กับองค์ประกอบหลักโดยแทนที่ "เนื้อหา" สำหรับ "ผู้ติดต่อ" ตอนนี้ฉันมีปลั๊กอินที่ติดตั้งได้ซึ่งรวมแท็บ / ฟิลด์บนฟอร์มการแก้ไขรายการเนื้อหาของผู้ดูแลระบบและทำงานได้อย่างยอดเยี่ยมยกเว้นคุณสมบัติ "บันทึก" ที่น่ารำคาญ การอ้างอิงถึงการบันทึกเท่านั้นคือ (อีกครั้งเนื้อหาแทนการติดต่อ): ฟิลด์เพิ่มเติมถูกโหลดจากฟอร์มไฟล์ / contact.xml ในไดเรกทอรีปลั๊กอิน สิ่งสำคัญคือเขตข้อมูลเหล่านี้อยู่ในองค์ประกอบเขตข้อมูลที่มีคุณสมบัติชื่อตั้งค่าเป็น "params" หากคุณไม่ได้ตั้งชื่อคุณสมบัตินี้ฟิลด์จะปรากฏในไซต์ผู้ดูแลระบบ แต่ค่าจะไม่ถูกบันทึก ความจริงที่ว่ามีคำเตือนนี้อยู่แนะนำให้ฉันรู้ว่า Joomla ควรรู้ว่ามีทุ่งนาและรหัสหลักจัดการกับมัน แต่เนื่องจากมันไม่ได้บันทึกฉันสงสัยว่ามีอีกเหตุการณ์ที่ฉันควรเพิ่ม นี่คือฟิลด์ง่าย ๆ ที่ฉันต้องการ - ผู้ใช้ไม่สามารถมองเห็นได้ แต่สิ่งสำคัญยังคงอยู่และไม่มีที่ไหนใกล้กับความต้องการของ CCK ในการจัดเก็บ มีอะไรผิดปกติ / ขาดหายไปซึ่งทำให้ไม่สามารถบันทึกฟิลด์ที่กำหนดเองได้ อัปเดต: หวังว่าจะไม่ได้เก็บฟิลด์ที่กำหนดเองไว้ในฐานข้อมูลฉันหวังว่าจะเพิ่มคอลัมน์ในตาราง #__content ด้วยชื่อเดียวกันและลองใช้โดยไม่มีโชค gdp.php class plgContentGdp extends JPlugin { protected $autoloadLanguage = true; ...

3
ส่วนขยาย 'ปิดการใช้งาน' ทำช้าลง Joomla! ประสิทธิภาพของเว็บไซต์?
หากฉันมีส่วนขยาย "ติดตั้ง แต่ปิดการใช้งาน" ในตัวจัดการส่วนขยายของฉัน (ตรงข้ามกับ "ถอนการติดตั้งอย่างสมบูรณ์") ส่วนขยายที่ถูกปิดใช้งานเหล่านี้จะชะลอประสิทธิภาพเว็บไซต์สำหรับผู้เยี่ยมชมเว็บไซต์หรือไม่ ถ้าใช่ทำไม

1
วิธีรวม ANDs และ ORs ในส่วนคำสั่ง WHERE โดยใช้ Query Object
เมื่อพิจารณาจาก SQL ที่ต้องการด้านล่างโดยที่ Cond1 และ Cond2 ต้องเป็นไปตามที่กำหนดหรือต้องพบกับ Cond3 สำหรับการเลือกวิธีที่ถูกต้องในการใช้getQuery()เพื่อให้บรรลุนั้นคืออะไร? SQL ที่ต้องการ: Condition1 และ Condition2 ภายในวงเล็บ) SELECT * FROM #__myTable WHERE (condition1=true AND condition2=true) OR condition3=true เมื่อมีการผูกมัด: การ ระบุหรือใน -> where () $query = $db->getQuery(true); $query->select('* FROM #__myTable') ->where('condition1 = true AND condition2 = true','OR') ->where('condition3 = true'); ผลลัพธ์ SQL: (SQL ...
21 jdatabase  sql 


4
บทแนะนำการพัฒนาส่วนขยาย Joomla 3.x สำหรับนักพัฒนามือใหม่
ฉันทำงานอย่างกว้างขวางในรุ่น Joomla 1.0.15 และพัฒนาส่วนขยายที่หลากหลาย นอกจากนี้ฉันยังคงพัฒนาต่อไปใน Joomla 1.5.x แต่การพัฒนาของฉันถูกยกเลิกหลังจากการเปิดตัวครั้งนี้ ตอนนี้ฉันต้องการเริ่มพัฒนาอีกครั้งด้วย Joomla 3.x ฉันเห็นว่า Joomla ได้ทำการปรับปรุงหลายอย่างเช่น MVC เทมเพลตที่ตอบสนองเวิร์กโฟลว์และอื่น ๆ อีกมากมาย มีคนให้ลิงก์โรดแมพและบทช่วยสอนที่ง่ายที่สุดให้ฉันได้ไหม เวิร์กโฟลว์ใหม่คืออะไรตอนนี้ สถาปัตยกรรม MVC ใหม่คืออะไร

4
จะแทนที่คลาสหลักได้อย่างไร
บางครั้งมีความจำเป็นต้องแทนที่คลาสหลักเพื่อรับฟังก์ชั่นเพิ่มเติมหรือเพื่อให้ฟังก์ชั่นหลักบางอย่างทำงานในอีกทางหนึ่ง มีวิธีการแทนที่คลาสหลักหรือไม่? ถ้าเป็นไปได้แล้วปัญหาอะไรที่ฉันสามารถแก้ไขได้ด้วยการเอาชนะพวกเขา?
20 overrides 

3
วิธีที่ถูกต้องสำหรับการจัดการข้อยกเว้นคืออะไร?
ใน Joomla core ฉันยังพบการโทรจำนวนมากเช่นนี้: // Check for errors. if (count($errors = $this->get('Errors'))) { JError::raiseError(500, implode("\n", $errors)); return false; } แต่ JError เลิกใช้แล้วตั้งแต่แพลตฟอร์มรีลีส 12.1 ดังนั้นฉันควรใช้ข้อยกเว้น PHP มาตรฐานอย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.