Я делаю плагин, и эта функция включает в себя карту в конце одного поста.
Проблема в том, что контент исчезает из индекса. Можете ли вы сказать мне, как я должен перекодировать эту функцию, чтобы она не влияла на содержимое индекса?
function svmpm_display_svm( $content ) {
global $post, $options;
$options = get_option('svmpm_options');
$metaname = $options['metaname'];
$sheight = $options['hght'];
$swidth = $options['wdth'];
$svmpmaddress = get_post_meta($post->ID, $metaname, true);
if(is_single()) {
$acontent = '<div onunload="GUnload()">
<script src="http://maps.google.com/maps?file=api&v=2&sensor=false" type="text/javascript"></script>
<div id="map_canvas" style="width: ';
$acontent .= $swidth;
$acontent .= '; height: ';
$acontent .= $sheight;
$acontent .= '"></div>
<script type="text/javascript">
var myAddress = ';
$acontent .= '\'';
$acontent .= $svmpmaddress;
$acontent .= '\';';
$acontent .= 'var userLocation = myAddress;
if (GBrowserIsCompatible()) {
var geocoder = new GClientGeocoder();
geocoder.getLocations(userLocation, function (locations) {
if (locations.Placemark)
{
var north = locations.Placemark[0].ExtendedData.LatLonBox.north;
var south = locations.Placemark[0].ExtendedData.LatLonBox.south;
var east = locations.Placemark[0].ExtendedData.LatLonBox.east;
var west = locations.Placemark[0].ExtendedData.LatLonBox.west;
var bounds = new GLatLngBounds(new GLatLng(south, west),
new GLatLng(north, east));
new GStreetviewPanorama(document.getElementById("map_canvas"),
{ latlng: bounds.getCenter() });
}
});
}
</script>
</div>';
if ($options['pbelow'] == 1) { //Only below p
return $content . $acontent;
};
} ;
};
add_filter('the_content', 'svmpm_display_svm');