Development:Blocks: различия между версиями

Материал из MoodleDocs
Перейти к:навигация, поиск
Строка 11: Строка 11:
== Здравствуй Мир ==
== Здравствуй Мир ==


Для создания ''блока'' в Moodle в большинстве случаем достаточно написать один скрипт. Для начала в директории <tt>blocks/имя_блока/</tt> создаем наш скрипт <tt>''имя_блока''<tt/>. Например если наш блок будет носить имя <tt>''simplehtml''</tt>, путь к скрипту будет иметь вид <tt>/blocks/simplehtml/'''block_simplehtml.php'''</tt>. Теперь начнем писать сам код:
Для создания ''блока'' в Moodle в большинстве случаем достаточно написать один скрипт. Для начала в директории <tt>blocks/имя_блока/</tt> создаем наш скрипт <tt>''имя_блока''</tt>. Например если наш блок будет носить имя <tt>''simplehtml''</tt>, путь к скрипту будет иметь вид <tt>/blocks/simplehtml/'''block_simplehtml.php'''</tt>. Теперь начнем писать сам код:


<code php>
<code php>
Строка 28: Строка 28:
Сначала мы объявляем класс, он должен обязательно объявлятся таким образом как показано, т. к. является расширением автоподключаемого класса, который находиться в файле <tt>/blocks/moodleblock.class.php</tt> В дальнейшем мы можем (и даже должны) изменять только часть <tt>''simplehtml''</tt>, все остальное является стандартным и стандартизированным.
Сначала мы объявляем класс, он должен обязательно объявлятся таким образом как показано, т. к. является расширением автоподключаемого класса, который находиться в файле <tt>/blocks/moodleblock.class.php</tt> В дальнейшем мы можем (и даже должны) изменять только часть <tt>''simplehtml''</tt>, все остальное является стандартным и стандартизированным.


Первый метод в нашем классе <tt>init()</tt>, он обязательный для всех блоков и служит для определения двух методов.
Первый метод в нашем классе <tt>init()</tt>, он обязательный для всех блоков и служит для определения двух методов. Рассмотрим их более подробно.
 
:<tt>$this->title</tt> это заголовок, отображаемый в строке заголовка нашего блока. Мы можем назвать его как угодно. В нашем случае мы берем заголовок из языкового файла, который прилагается к нашему блоку. Более подробно мы рассмотрим этот метод позже. Если вы хотите использовать блок '''без заголовка''', назначьте методу любое значение но '''не пустую строку'''! Далее мы рассмотрим как отключить отображение заголовка.
 
:<tt>$this->version</tt> это версия нашего блока. Используется скриптом обновления ({{lang-en|upgrade script}}). В нашем случае мы установили версию как дату ГГГГММДД00, для простоты.


== Примечания ==
== Примечания ==

Версия от 11:56, 9 апреля 2010


Пошаговое руководство по созданию блоков

Автор источника: Jon Papaioannou (pj@moodle.org)

Данное руководство предназначено для разработчиков которые работают над своими блоками для Moodle. Руководство написано для версии Moodle 1.5 но должно обновляться в последствии.

Введение

В этом руководстве мы рассмотрим несуществующий блок "SimpleHTML". Подразумевается, что вcе пути начинаются из домашней директории Moodle.

Здравствуй Мир

Для создания блока в Moodle в большинстве случаем достаточно написать один скрипт. Для начала в директории blocks/имя_блока/ создаем наш скрипт имя_блока. Например если наш блок будет носить имя simplehtml, путь к скрипту будет иметь вид /blocks/simplehtml/block_simplehtml.php. Теперь начнем писать сам код:

<?php class block_simplehtml extends block_base {

 function init() {
   $this->title   = get_string('simplehtml', 'block_simplehtml');
   $this->version = 2004111200;
 }
• • •
// Здороваемся с Миром :)
• • •

}

Сначала мы объявляем класс, он должен обязательно объявлятся таким образом как показано, т. к. является расширением автоподключаемого класса, который находиться в файле /blocks/moodleblock.class.php В дальнейшем мы можем (и даже должны) изменять только часть simplehtml, все остальное является стандартным и стандартизированным.

Первый метод в нашем классе init(), он обязательный для всех блоков и служит для определения двух методов. Рассмотрим их более подробно.

$this->title это заголовок, отображаемый в строке заголовка нашего блока. Мы можем назвать его как угодно. В нашем случае мы берем заголовок из языкового файла, который прилагается к нашему блоку. Более подробно мы рассмотрим этот метод позже. Если вы хотите использовать блок без заголовка, назначьте методу любое значение но не пустую строку! Далее мы рассмотрим как отключить отображение заголовка.
$this->version это версия нашего блока. Используется скриптом обновления (англ. upgrade script

nu i??). В нашем случае мы установили версию как дату ГГГГММДД00, для простоты.

Примечания

См. также

Ссылки