Наши сотрудники
" lab_order = [ @@ -147,27 +151,47 @@ def main(): with open('public/staff.html', 'w', encoding='utf-8') as f: f.write(TEMPLATE.format(title="Сотрудники", content=staff_html)) - # 4. Создаем индивидуальные страницы для каждого сотрудника + # 4. Персональные страницы сотрудников for md_file in Path('content/staff').glob('*.md'): with open(md_file, 'r', encoding='utf-8') as f: meta, body = parse_front_matter(f.read()) name = meta.get('name', md_file.stem.replace('-', ' ').title()) - - # Добавляем ссылку "Назад к списку" в начало страницы full_content = f'← Назад к списку сотрудников\n{body}' html_content = markdown.markdown(full_content, extensions=['fenced_code', 'tables']) with open(Path(f'public/staff/{md_file.stem}.html'), 'w', encoding='utf-8') as f: f.write(TEMPLATE.format(title=name, content=html_content)) - # 5. Копирование статических файлов (картинки) + # 5. Страница с публикациями (PDF-файлы) + pdf_files = sorted(Path('static/pdf').glob('*.pdf')) + if pdf_files: + pdf_list_html = "Научные публикации и документы
- "
+ for pdf in pdf_files:
+ # Получаем название из имени файла или из метаданных (если есть)
+ title = pdf.stem.replace('-', ' ').replace('_', ' ').title()
+ size_mb = pdf.stat().st_size / (1024 * 1024)
+ pdf_list_html += f"""
+
- + {title} + ({size_mb:.1f} MB) + """ + pdf_list_html += "
Публикации
В этом разделе скоро появятся научные публикации и документы.
")) + + # 6. Копирование статических файлов (картинки, PDF, CSS) if Path('static').exists(): shutil.rmtree('public/static', ignore_errors=True) shutil.copytree('static', 'public/static') - print("✅ Статические файлы скопированы") + print("✅ Статические файлы скопированы (включая PDF)") - print("✅ Сайт успешно собран! Сотрудники сгруппированы и кликабельны.") + print("✅ Сайт успешно собран!") if __name__ == '__main__': main() \ No newline at end of file