Cea mai bună modalitate de a include Bootstrap în WordPress
Vin dintr-un background de Laravel unde utilizarea Bootstrap este relativ ușoară. Cu toate acestea, am un proiect la care lucrez cu WordPress și folosesc Bootstrap pentru barele de navigare. Problema este că acestea îmi strică header-ul paginii. Tema pe care o folosesc este Be Theme. Acesta este codul meu:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<div class="row">
<div class="tabbable">
<div class="panel panel-default">
<div class="panel-body">
<ul class="nav nav-tabs nav-justified" role="tablist">
<li class="nav-item">
<a class="nav-link active" data-toggle="tab" href="#link" role="tab" style="color:black;"></a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#link" role="tab" style="color: black; "></a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#link" role="tab" style="color: black;"></a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#link" role="tab" style="color: black;"></a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#link" role="tab" style="color: black;"></a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#link" role="tab" style="color: black;"></a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" href="#link" role="tab" style="color:black;"></a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="link" role="tabpanel" style="; color: black;">
<form action="" method="get" name="" style="color: black;" class="form-inline">
<br>
<br>
<input type="submit" name="submit" class="btn btn-default" style="background-color: red;">
</form>
<table>
</table>
</div>
<div class="tab-pane " id="id" role="tabpanel" style=";">
</div>
<div class="tab-pane " id="id" role="tabpanel" style=";">
</div>
<div class="tab-pane " id="id" role="tabpanel" style=";">
</div>
<div class="tab-pane " id="id" role="tabpanel" style=";">
</div>
<div class="tab-pane " id="id" role="tabpanel" style=";">
</div>
<div class="tab-pane " id="id" role="tabpanel" style=";">
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
Am creat o pagină template folosind acest cod mulțumită ajutorului primit în întrebarea anterioară.
Cum pot folosi Bootstrap fără să stric temele WordPress și header-ele lor?
EDIT: așa arată functions.php-ul meu
add_action( 'wp_enqueue_scripts', 'mfnch_enqueue_styles', 101 );
function mfnch_enqueue_styles() {
// Încarcă stylesheet-ul părinte
// wp_enqueue_style( 'parent-style', get_template_directory_uri() .'/style.css' ); //nu avem nevoie de asta dacă este gol
// Încarcă stylesheet-ul rtl părinte
if ( is_rtl() ) {
wp_enqueue_style( 'mfn-rtl', get_template_directory_uri() . '/rtl.css' );
}
// Încarcă stylesheet-ul copil
wp_dequeue_style( 'style' );
wp_enqueue_style( 'style', get_stylesheet_directory_uri() .'/style.css' );
}
Cum editez această funcție pentru a include Bootstrap ^? Am încercat singur dar nu îl afișează.
Mulțumesc anticipat!

Puteți adăuga Bootstrap în WordPress folosind următoarea funcție în functions.php
Puteți modifica URL-ul după necesități dacă aveți un CDN.
<?php
/**
* Încarcă scripturile și stilurile
*/
function your_theme_enqueue_scripts() {
// toate stilurile
wp_enqueue_style( 'bootstrap', get_stylesheet_directory_uri() . '/css/bootstrap.css', array(), 20141119 );
wp_enqueue_style( 'theme-style', get_stylesheet_directory_uri() . '/css/style.css', array(), 20141119 );
// toate scripturile
wp_enqueue_script( 'bootstrap', get_template_directory_uri() . '/js/bootstrap.min.js', array('jquery'), '20120206', true );
wp_enqueue_script( 'theme-script', get_template_directory_uri() . '/js/scripts.js', array('jquery'), '20120206', true );
}
add_action( 'wp_enqueue_scripts', 'your_theme_enqueue_scripts' );

Am realizat că acest script este cel care îmi strica header-ul <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

așa https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js ?

// va identifica automat dacă pagina provine dintr-o pagină web securizată sau nesecurizată, adică http sau https Dacă scriem direct: HTTP sau HTTPS, atunci va crea probleme de blocare a parserului și riscuri cross-site.

Care este cea mai bună practică pentru a include Bootstrap de pe web (fără a-l descărca)? Cum poți adăuga proprietățile: 'integrity' și 'crossorigin'?

Dacă dorești ca stilurile bibliotecii să fie încărcate înaintea tuturor celorlalte stiluri, iar stilurile temei să fie încărcate după toate celelalte (cu stilurile plugin-urilor la mijloc), trebuie să folosești două funcții. Prima, cu prioritatea "9", va fi folosită pentru a încărca stilurile bibliotecii, iar a doua, cu prioritatea "10", va fi folosită pentru a încărca fișierele temei. Folosirea unei singure funcții pentru a încărca totul, într-o temă, duce la o situație în care stilurile plugin-urilor sunt primele care se încarcă.

Cum ar fi să economisești lățime de bandă și posibil să îmbunătățești viteza de încărcare a paginii folosind MaxCDN și NetDNA. Adaugă aceste două funcții în fișierul tău functions.php
function pwwp_enqueue_my_scripts() {
// jQuery este declarat ca dependință pentru bootstrap-js - va fi încărcat de WordPress înaintea scripturilor BS
wp_enqueue_script( 'bootstrap-js', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js', array('jquery'), true); // toată bunătatea JavaScript a Bootstrap
}
add_action('wp_enqueue_scripts', 'pwwp_enqueue_my_scripts');
function pwwp_enqueue_my_styles() {
wp_enqueue_style( 'bootstrap', '//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css' );
// aceasta va adăuga fișierul de stil din locația implicită a temei, dacă tema ta nu o face deja
//wp_enqueue_style( 'my-style', get_template_directory_uri() . '/style.css');
}
add_action('wp_enqueue_scripts', 'pwwp_enqueue_my_styles');
